1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/mfd/rockchip,rk818.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: RK818 Power Management Integrated Circuit 8 9maintainers: 10 - Chris Zhong <zyw@rock-chips.com> 11 - Zhang Qing <zhangqing@rock-chips.com> 12 13description: | 14 Rockchip RK818 series PMIC. This device consists of an i2c controlled MFD 15 that includes regulators, an RTC, and a power button. 16 17properties: 18 compatible: 19 enum: 20 - rockchip,rk818 21 22 reg: 23 maxItems: 1 24 25 interrupts: 26 maxItems: 1 27 28 '#clock-cells': 29 description: | 30 See <dt-bindings/clock/rockchip,rk808.h> for clock IDs. 31 const: 1 32 33 clock-output-names: 34 description: 35 From common clock binding to override the default output clock name. 36 maxItems: 2 37 38 rockchip,system-power-controller: 39 type: boolean 40 deprecated: true 41 description: 42 Telling whether or not this PMIC is controlling the system power. 43 44 system-power-controller: true 45 46 wakeup-source: 47 type: boolean 48 description: 49 Device can be used as a wakeup source. 50 51 vcc1-supply: 52 description: 53 The input supply for DCDC_REG1. 54 55 vcc2-supply: 56 description: 57 The input supply for DCDC_REG2. 58 59 vcc3-supply: 60 description: 61 The input supply for DCDC_REG3. 62 63 vcc4-supply: 64 description: 65 The input supply for DCDC_REG4. 66 67 boost-supply: 68 description: 69 The input supply for DCDC_BOOST 70 71 vcc6-supply: 72 description: 73 The input supply for LDO_REG1 and LDO_REG2. 74 75 vcc7-supply: 76 description: 77 The input supply for LDO_REG3, LDO_REG5, and LDO_REG7. 78 79 vcc8-supply: 80 description: 81 The input supply for LDO_REG4, LDO_REG6, and LDO_REG8. 82 83 vcc9-supply: 84 description: 85 The input supply for LDO_REG9 and SWITCH_REG. 86 87 vddio-supply: 88 description: 89 The input supply for digital IO. 90 91 h_5v-supply: 92 description: 93 The input supply for HDMI_SWITCH. 94 95 usb-supply: 96 description: 97 The input supply for OTG_SWITCH. 98 99 regulators: 100 type: object 101 patternProperties: 102 "^(DCDC_REG[1-4]|DCDC_BOOST|LDO_REG[1-9]|SWITCH_REG|HDMI_SWITCH|OTG_SWITCH)$": 103 type: object 104 $ref: ../regulator/regulator.yaml# 105 unevaluatedProperties: false 106 unevaluatedProperties: false 107 108required: 109 - compatible 110 - reg 111 - interrupts 112 - "#clock-cells" 113 114additionalProperties: false 115 116examples: 117 - | 118 #include <dt-bindings/clock/px30-cru.h> 119 #include <dt-bindings/pinctrl/rockchip.h> 120 #include <dt-bindings/interrupt-controller/irq.h> 121 #include <dt-bindings/gpio/gpio.h> 122 i2c { 123 #address-cells = <1>; 124 #size-cells = <0>; 125 126 rk818: pmic@1c { 127 compatible = "rockchip,rk818"; 128 reg = <0x1c>; 129 interrupt-parent = <&gpio0>; 130 interrupts = <4 IRQ_TYPE_LEVEL_LOW>; 131 pinctrl-names = "default"; 132 pinctrl-0 = <&pmic_int>; 133 rockchip,system-power-controller; 134 wakeup-source; 135 #clock-cells = <1>; 136 137 vcc1-supply = <&vdd_sys>; 138 vcc2-supply = <&vdd_sys>; 139 vcc3-supply = <&vdd_sys>; 140 vcc4-supply = <&vdd_sys>; 141 boost-supply = <&vdd_in_otg_out>; 142 vcc6-supply = <&vdd_sys>; 143 vcc7-supply = <&vdd_misc_1v8>; 144 vcc8-supply = <&vdd_misc_1v8>; 145 vcc9-supply = <&vdd_3v3_io>; 146 vddio-supply = <&vdd_3v3_io>; 147 148 regulators { 149 vdd_log: DCDC_REG1 { 150 regulator-name = "vdd_log"; 151 regulator-always-on; 152 regulator-boot-on; 153 regulator-min-microvolt = <1100000>; 154 regulator-max-microvolt = <1100000>; 155 regulator-state-mem { 156 regulator-off-in-suspend; 157 }; 158 }; 159 160 vdd_gpu: DCDC_REG2 { 161 regulator-name = "vdd_gpu"; 162 regulator-always-on; 163 regulator-boot-on; 164 regulator-min-microvolt = <800000>; 165 regulator-max-microvolt = <1250000>; 166 regulator-state-mem { 167 regulator-on-in-suspend; 168 regulator-suspend-microvolt = <1000000>; 169 }; 170 }; 171 172 vcc_ddr: DCDC_REG3 { 173 regulator-name = "vcc_ddr"; 174 regulator-always-on; 175 regulator-boot-on; 176 regulator-state-mem { 177 regulator-on-in-suspend; 178 }; 179 }; 180 181 vdd_3v3_io: DCDC_REG4 { 182 regulator-name = "vdd_3v3_io"; 183 regulator-always-on; 184 regulator-boot-on; 185 regulator-min-microvolt = <3300000>; 186 regulator-max-microvolt = <3300000>; 187 regulator-state-mem { 188 regulator-on-in-suspend; 189 regulator-suspend-microvolt = <3300000>; 190 }; 191 }; 192 193 vdd_sys: DCDC_BOOST { 194 regulator-name = "vdd_sys"; 195 regulator-always-on; 196 regulator-boot-on; 197 regulator-min-microvolt = <5000000>; 198 regulator-max-microvolt = <5000000>; 199 regulator-state-mem { 200 regulator-on-in-suspend; 201 regulator-suspend-microvolt = <5000000>; 202 }; 203 }; 204 205 vdd_sd: SWITCH_REG { 206 regulator-name = "vdd_sd"; 207 regulator-always-on; 208 regulator-boot-on; 209 regulator-state-mem { 210 regulator-off-in-suspend; 211 }; 212 }; 213 214 vdd_eth_2v5: LDO_REG2 { 215 regulator-name = "vdd_eth_2v5"; 216 regulator-always-on; 217 regulator-boot-on; 218 regulator-min-microvolt = <2500000>; 219 regulator-max-microvolt = <2500000>; 220 regulator-state-mem { 221 regulator-on-in-suspend; 222 regulator-suspend-microvolt = <2500000>; 223 }; 224 }; 225 226 vdd_1v0: LDO_REG3 { 227 regulator-name = "vdd_1v0"; 228 regulator-always-on; 229 regulator-boot-on; 230 regulator-min-microvolt = <1000000>; 231 regulator-max-microvolt = <1000000>; 232 regulator-state-mem { 233 regulator-on-in-suspend; 234 regulator-suspend-microvolt = <1000000>; 235 }; 236 }; 237 238 vdd_1v8_lcd_ldo: LDO_REG4 { 239 regulator-name = "vdd_1v8_lcd_ldo"; 240 regulator-always-on; 241 regulator-boot-on; 242 regulator-min-microvolt = <1800000>; 243 regulator-max-microvolt = <1800000>; 244 regulator-state-mem { 245 regulator-on-in-suspend; 246 regulator-suspend-microvolt = <1800000>; 247 }; 248 }; 249 250 vdd_1v0_lcd: LDO_REG6 { 251 regulator-name = "vdd_1v0_lcd"; 252 regulator-always-on; 253 regulator-boot-on; 254 regulator-min-microvolt = <1000000>; 255 regulator-max-microvolt = <1000000>; 256 regulator-state-mem { 257 regulator-on-in-suspend; 258 regulator-suspend-microvolt = <1000000>; 259 }; 260 }; 261 262 vdd_1v8_ldo: LDO_REG7 { 263 regulator-name = "vdd_1v8_ldo"; 264 regulator-always-on; 265 regulator-boot-on; 266 regulator-min-microvolt = <1800000>; 267 regulator-max-microvolt = <1800000>; 268 regulator-state-mem { 269 regulator-off-in-suspend; 270 regulator-suspend-microvolt = <1800000>; 271 }; 272 }; 273 274 vdd_io_sd: LDO_REG9 { 275 regulator-name = "vdd_io_sd"; 276 regulator-always-on; 277 regulator-boot-on; 278 regulator-min-microvolt = <1800000>; 279 regulator-max-microvolt = <3300000>; 280 regulator-state-mem { 281 regulator-off-in-suspend; 282 }; 283 }; 284 }; 285 }; 286 }; 287