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 <[email protected]> 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 - nxp,pca9452 33 34 reg: 35 maxItems: 1 36 37 interrupts: 38 maxItems: 1 39 40 regulators: 41 type: object 42 description: | 43 list of regulators provided by this controller 44 45 patternProperties: 46 "^LDO[1-5]$": 47 type: object 48 $ref: regulator.yaml# 49 description: 50 Properties for single LDO regulator. 51 52 unevaluatedProperties: false 53 54 "^BUCK[1-6]$": 55 type: object 56 $ref: regulator.yaml# 57 description: 58 Properties for single BUCK regulator. 59 60 properties: 61 nxp,dvs-run-voltage: 62 $ref: /schemas/types.yaml#/definitions/uint32 63 minimum: 600000 64 maximum: 2187500 65 description: 66 PMIC default "RUN" state voltage in uV. Only Buck1~3 have such 67 dvs(dynamic voltage scaling) property. 68 69 nxp,dvs-standby-voltage: 70 $ref: /schemas/types.yaml#/definitions/uint32 71 minimum: 600000 72 maximum: 2187500 73 description: 74 PMIC default "STANDBY" state voltage in uV. Only Buck1~3 have such 75 dvs(dynamic voltage scaling) property. 76 77 unevaluatedProperties: false 78 79 additionalProperties: false 80 81 sd-vsel-gpios: 82 description: GPIO that is used to switch LDO5 between being configured by 83 LDO5CTRL_L or LDO5CTRL_H register. Use this if the SD_VSEL signal is 84 connected to a host GPIO. 85 86 nxp,i2c-lt-enable: 87 type: boolean 88 description: 89 Indicates that the I2C Level Translator is used. 90 91 nxp,wdog_b-warm-reset: 92 type: boolean 93 description: 94 When WDOG_B signal is asserted a warm reset will be done instead of cold 95 reset. 96 97required: 98 - compatible 99 - reg 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