1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/mfd/nxp,pf1550.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: NXP PF1550 Power Management IC 8 9maintainers: 10 - Samuel Kayode <samuel.kayode@savoirfairelinux.com> 11 12description: 13 PF1550 PMIC provides battery charging and power supply for low power IoT and 14 wearable applications. This device consists of an i2c controlled MFD that 15 includes regulators, battery charging and an onkey/power button. 16 17$ref: /schemas/power/supply/power-supply.yaml 18 19properties: 20 compatible: 21 const: nxp,pf1550 22 23 reg: 24 maxItems: 1 25 26 interrupts: 27 maxItems: 1 28 29 wakeup-source: true 30 31 regulators: 32 type: object 33 additionalProperties: false 34 35 patternProperties: 36 "^(ldo[1-3]|sw[1-3]|vrefddr)$": 37 type: object 38 $ref: /schemas/regulator/regulator.yaml 39 description: 40 regulator configuration for ldo1-3, buck converters(sw1-3) 41 and DDR termination reference voltage (vrefddr) 42 unevaluatedProperties: false 43 44 monitored-battery: 45 description: | 46 A phandle to a monitored battery node that contains a valid value 47 for: 48 constant-charge-voltage-max-microvolt. 49 50 nxp,thermal-regulation-celsius: 51 description: 52 Temperature threshold for thermal regulation of charger in celsius. 53 enum: [ 80, 95, 110, 125 ] 54 55 nxp,min-system-microvolt: 56 description: 57 System specific lower limit voltage. 58 enum: [ 3500000, 3700000, 4300000 ] 59 60 nxp,disable-key-power: 61 type: boolean 62 description: 63 Disable power-down using a long key-press. The onkey driver will remove 64 support for the KEY_POWER key press when triggered using a long press of 65 the onkey. 66 67required: 68 - compatible 69 - reg 70 - interrupts 71 72unevaluatedProperties: false 73 74examples: 75 - | 76 #include <dt-bindings/interrupt-controller/irq.h> 77 #include <dt-bindings/input/linux-event-codes.h> 78 79 battery: battery-cell { 80 compatible = "simple-battery"; 81 constant-charge-voltage-max-microvolt = <4400000>; 82 }; 83 84 i2c { 85 #address-cells = <1>; 86 #size-cells = <0>; 87 88 pmic@8 { 89 compatible = "nxp,pf1550"; 90 reg = <0x8>; 91 92 interrupt-parent = <&gpio1>; 93 interrupts = <2 IRQ_TYPE_LEVEL_LOW>; 94 wakeup-source; 95 monitored-battery = <&battery>; 96 nxp,min-system-microvolt = <4300000>; 97 nxp,thermal-regulation-celsius = <80>; 98 99 regulators { 100 sw1_reg: sw1 { 101 regulator-name = "sw1"; 102 regulator-min-microvolt = <600000>; 103 regulator-max-microvolt = <1387500>; 104 regulator-always-on; 105 regulator-ramp-delay = <6250>; 106 107 regulator-state-mem { 108 regulator-on-in-suspend; 109 regulator-suspend-min-microvolt = <1270000>; 110 }; 111 }; 112 113 sw2_reg: sw2 { 114 regulator-name = "sw2"; 115 regulator-min-microvolt = <600000>; 116 regulator-max-microvolt = <1387500>; 117 regulator-always-on; 118 119 regulator-state-mem { 120 regulator-on-in-suspend; 121 }; 122 }; 123 124 sw3_reg: sw3 { 125 regulator-name = "sw3"; 126 regulator-min-microvolt = <1800000>; 127 regulator-max-microvolt = <3300000>; 128 regulator-always-on; 129 130 regulator-state-mem { 131 regulator-on-in-suspend; 132 }; 133 }; 134 135 vldo1_reg: ldo1 { 136 regulator-name = "ldo1"; 137 regulator-min-microvolt = <750000>; 138 regulator-max-microvolt = <3300000>; 139 regulator-always-on; 140 141 regulator-state-mem { 142 regulator-off-in-suspend; 143 }; 144 }; 145 146 vldo2_reg: ldo2 { 147 regulator-name = "ldo2"; 148 regulator-min-microvolt = <1800000>; 149 regulator-max-microvolt = <3300000>; 150 regulator-always-on; 151 }; 152 153 vldo3_reg: ldo3 { 154 regulator-name = "ldo3"; 155 regulator-min-microvolt = <750000>; 156 regulator-max-microvolt = <3300000>; 157 regulator-always-on; 158 }; 159 }; 160 }; 161 }; 162