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,rk801.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: RK801 Power Management Integrated Circuit 8 9maintainers: 10 - Joseph Chen <chenjh@rock-chips.com> 11 12description: | 13 Rockchip RK801 series PMIC. This device consists of an i2c controlled MFD 14 that includes multiple switchable regulators. 15 16properties: 17 compatible: 18 enum: 19 - rockchip,rk801 20 21 reg: 22 maxItems: 1 23 24 interrupts: 25 maxItems: 1 26 27 system-power-controller: 28 type: boolean 29 description: 30 Telling whether or not this PMIC is controlling the system power. 31 32 wakeup-source: 33 type: boolean 34 description: 35 Device can be used as a wakeup source. 36 37 vcc1-supply: 38 description: 39 The input supply for dcdc1. 40 41 vcc2-supply: 42 description: 43 The input supply for dcdc2. 44 45 vcc3-supply: 46 description: 47 The input supply for dcdc3. 48 49 vcc4-supply: 50 description: 51 The input supply for dcdc4. 52 53 vcc5-supply: 54 description: 55 The input supply for ldo1. 56 57 vcc6-supply: 58 description: 59 The input supply for ldo2. 60 61 vcc7-supply: 62 description: 63 The input supply for switch. 64 65 regulators: 66 type: object 67 patternProperties: 68 "^(dcdc[1-4]|ldo[1-2]|switch)$": 69 type: object 70 $ref: /schemas/regulator/regulator.yaml# 71 unevaluatedProperties: false 72 additionalProperties: false 73 74required: 75 - compatible 76 - reg 77 - interrupts 78 79additionalProperties: false 80 81examples: 82 - | 83 #include <dt-bindings/pinctrl/rockchip.h> 84 #include <dt-bindings/interrupt-controller/irq.h> 85 #include <dt-bindings/gpio/gpio.h> 86 87 i2c { 88 #address-cells = <1>; 89 #size-cells = <0>; 90 91 rk801: pmic@27 { 92 compatible = "rockchip,rk801"; 93 reg = <0x27>; 94 interrupt-parent = <&gpio0>; 95 interrupts = <RK_PC0 IRQ_TYPE_LEVEL_LOW>; 96 pinctrl-names = "default"; 97 pinctrl-0 = <&pmic_int_l>; 98 system-power-controller; 99 wakeup-source; 100 101 vcc1-supply = <&vcc_sys>; 102 vcc2-supply = <&vcc_sys>; 103 vcc3-supply = <&vcc_sys>; 104 vcc4-supply = <&vcc_sys>; 105 vcc5-supply = <&vcc3v3_sys>; 106 vcc6-supply = <&vcc3v3_sys>; 107 vcc7-supply = <&vcc3v3_sys>; 108 109 regulators { 110 vdd_cpu: dcdc1 { 111 regulator-name = "vdd_cpu"; 112 regulator-min-microvolt = <500000>; 113 regulator-max-microvolt = <1500000>; 114 regulator-initial-mode = <0x1>; 115 regulator-boot-on; 116 regulator-always-on; 117 regulator-state-mem { 118 regulator-mode = <0x2>; 119 regulator-off-in-suspend; 120 regulator-suspend-microvolt = <950000>; 121 }; 122 }; 123 124 vcc3v3_sys: dcdc2 { 125 regulator-name = "vcc3v3_sys"; 126 regulator-min-microvolt = <3300000>; 127 regulator-max-microvolt = <3300000>; 128 regulator-initial-mode = <0x1>; 129 regulator-boot-on; 130 regulator-always-on; 131 regulator-state-mem { 132 regulator-mode = <0x2>; 133 regulator-on-in-suspend; 134 regulator-suspend-microvolt = <3300000>; 135 }; 136 }; 137 138 vcc_ddr: dcdc3 { 139 regulator-name = "vcc_ddr"; 140 regulator-boot-on; 141 regulator-always-on; 142 regulator-state-mem { 143 regulator-mode = <0x2>; 144 regulator-on-in-suspend; 145 }; 146 }; 147 148 vdd_logic: dcdc4 { 149 regulator-name = "vdd_logic"; 150 regulator-min-microvolt = <500000>; 151 regulator-max-microvolt = <1500000>; 152 regulator-initial-mode = <0x1>; 153 regulator-boot-on; 154 regulator-always-on; 155 regulator-state-mem { 156 regulator-mode = <0x2>; 157 regulator-off-in-suspend; 158 regulator-suspend-microvolt = <900000>; 159 }; 160 }; 161 162 vdd0v9_sys: ldo1 { 163 regulator-name = "vdd0v9_sys"; 164 regulator-min-microvolt = <900000>; 165 regulator-max-microvolt = <900000>; 166 regulator-boot-on; 167 regulator-always-on; 168 regulator-state-mem { 169 regulator-off-in-suspend; 170 regulator-suspend-microvolt = <900000>; 171 }; 172 }; 173 174 vcc_1v8: ldo2 { 175 regulator-name = "vcc_1v8"; 176 regulator-min-microvolt = <1800000>; 177 regulator-max-microvolt = <1800000>; 178 regulator-boot-on; 179 regulator-always-on; 180 regulator-state-mem { 181 regulator-off-in-suspend; 182 regulator-suspend-microvolt = <1800000>; 183 }; 184 }; 185 186 vcc_3v3: switch { 187 regulator-name = "vcc_3v3"; 188 regulator-boot-on; 189 regulator-always-on; 190 regulator-state-mem { 191 regulator-off-in-suspend; 192 regulator-suspend-microvolt = <3300000>; 193 }; 194 }; 195 }; 196 }; 197 }; 198