1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/regulator/nxp,pca9450-regulator.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: NXP PCA9450A/B/C Power Management Integrated Circuit regulators 8 9maintainers: 10 - Robin Gong <yibin.gong@nxp.com> 11 12description: | 13 Regulator nodes should be named to BUCK_<number> and LDO_<number>. The 14 definition for each of these nodes is defined using the standard 15 binding for regulators at 16 Documentation/devicetree/bindings/regulator/regulator.txt. 17 Datasheet is available at 18 https://www.nxp.com/docs/en/data-sheet/PCA9450DS.pdf 19 20# The valid names for PCA9450 regulator nodes are: 21# BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6, 22# LDO1, LDO2, LDO3, LDO4, LDO5 23# Note: Buck3 removed on PCA9450B and connect with Buck1 on PCA9450C. 24 25properties: 26 compatible: 27 enum: 28 - nxp,pca9450a 29 - nxp,pca9450b 30 - nxp,pca9450c 31 - nxp,pca9451a 32 33 reg: 34 maxItems: 1 35 36 interrupts: 37 maxItems: 1 38 39 regulators: 40 type: object 41 description: | 42 list of regulators provided by this controller 43 44 patternProperties: 45 "^LDO[1-5]$": 46 type: object 47 $ref: regulator.yaml# 48 description: 49 Properties for single LDO regulator. 50 51 unevaluatedProperties: false 52 53 "^BUCK[1-6]$": 54 type: object 55 $ref: regulator.yaml# 56 description: 57 Properties for single BUCK regulator. 58 59 properties: 60 nxp,dvs-run-voltage: 61 $ref: /schemas/types.yaml#/definitions/uint32 62 minimum: 600000 63 maximum: 2187500 64 description: 65 PMIC default "RUN" state voltage in uV. Only Buck1~3 have such 66 dvs(dynamic voltage scaling) property. 67 68 nxp,dvs-standby-voltage: 69 $ref: /schemas/types.yaml#/definitions/uint32 70 minimum: 600000 71 maximum: 2187500 72 description: 73 PMIC default "STANDBY" state voltage in uV. Only Buck1~3 have such 74 dvs(dynamic voltage scaling) property. 75 76 unevaluatedProperties: false 77 78 additionalProperties: false 79 80 sd-vsel-gpios: 81 description: GPIO that is used to switch LDO5 between being configured by 82 LDO5CTRL_L or LDO5CTRL_H register. Use this if the SD_VSEL signal is 83 connected to a host GPIO. 84 85 nxp,i2c-lt-enable: 86 type: boolean 87 description: 88 Indicates that the I2C Level Translator is used. 89 90 nxp,wdog_b-warm-reset: 91 type: boolean 92 description: 93 When WDOG_B signal is asserted a warm reset will be done instead of cold 94 reset. 95 96required: 97 - compatible 98 - reg 99 - interrupts 100 - regulators 101 102additionalProperties: false 103 104examples: 105 - | 106 #include <dt-bindings/interrupt-controller/irq.h> 107 108 i2c { 109 #address-cells = <1>; 110 #size-cells = <0>; 111 pmic: pmic@25 { 112 compatible = "nxp,pca9450b"; 113 reg = <0x25>; 114 pinctrl-0 = <&pinctrl_pmic>; 115 interrupt-parent = <&gpio1>; 116 interrupts = <3 IRQ_TYPE_LEVEL_LOW>; 117 118 regulators { 119 buck1: BUCK1 { 120 regulator-name = "BUCK1"; 121 regulator-min-microvolt = <600000>; 122 regulator-max-microvolt = <2187500>; 123 regulator-boot-on; 124 regulator-always-on; 125 regulator-ramp-delay = <3125>; 126 }; 127 buck2: BUCK2 { 128 regulator-name = "BUCK2"; 129 regulator-min-microvolt = <600000>; 130 regulator-max-microvolt = <2187500>; 131 regulator-boot-on; 132 regulator-always-on; 133 regulator-ramp-delay = <3125>; 134 nxp,dvs-run-voltage = <950000>; 135 nxp,dvs-standby-voltage = <850000>; 136 }; 137 buck4: BUCK4 { 138 regulator-name = "BUCK4"; 139 regulator-min-microvolt = <600000>; 140 regulator-max-microvolt = <3400000>; 141 regulator-boot-on; 142 regulator-always-on; 143 }; 144 buck5: BUCK5 { 145 regulator-name = "BUCK5"; 146 regulator-min-microvolt = <600000>; 147 regulator-max-microvolt = <3400000>; 148 regulator-boot-on; 149 regulator-always-on; 150 }; 151 buck6: BUCK6 { 152 regulator-name = "BUCK6"; 153 regulator-min-microvolt = <600000>; 154 regulator-max-microvolt = <3400000>; 155 regulator-boot-on; 156 regulator-always-on; 157 }; 158 159 ldo1: LDO1 { 160 regulator-name = "LDO1"; 161 regulator-min-microvolt = <1600000>; 162 regulator-max-microvolt = <3300000>; 163 regulator-boot-on; 164 regulator-always-on; 165 }; 166 ldo2: LDO2 { 167 regulator-name = "LDO2"; 168 regulator-min-microvolt = <800000>; 169 regulator-max-microvolt = <1150000>; 170 regulator-boot-on; 171 regulator-always-on; 172 }; 173 ldo3: LDO3 { 174 regulator-name = "LDO3"; 175 regulator-min-microvolt = <800000>; 176 regulator-max-microvolt = <3300000>; 177 regulator-boot-on; 178 regulator-always-on; 179 }; 180 ldo4: LDO4 { 181 regulator-name = "LDO4"; 182 regulator-min-microvolt = <800000>; 183 regulator-max-microvolt = <3300000>; 184 regulator-boot-on; 185 regulator-always-on; 186 }; 187 ldo5: LDO5 { 188 regulator-name = "LDO5"; 189 regulator-min-microvolt = <1800000>; 190 regulator-max-microvolt = <3300000>; 191 regulator-boot-on; 192 regulator-always-on; 193 }; 194 }; 195 }; 196 }; 197