blob: 44f8188360dd42d9ec17380c66908631882411ac [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mfd/rockchip,rk805.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: RK805 Power Management Integrated Circuit
8
9maintainers:
10 - Chris Zhong <zyw@rock-chips.com>
11 - Zhang Qing <zhangqing@rock-chips.com>
12
13description: |
14 Rockchip RK805 series PMIC. This device consists of an i2c controlled MFD
15 that includes multiple switchable regulators.
16
17properties:
18 compatible:
19 enum:
20 - rockchip,rk805
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 minimum: 0
32 maximum: 1
33
34 clock-output-names:
35 description:
36 From common clock binding to override the default output clock name.
37
38 gpio-controller: true
39
40 '#gpio-cells':
41 const: 2
42
43 rockchip,system-power-controller:
44 type: boolean
45 deprecated: true
46 description:
47 Telling whether or not this PMIC is controlling the system power.
48
49 system-power-controller: true
50
51 wakeup-source:
52 type: boolean
53 description:
54 Device can be used as a wakeup source.
55
56 vcc1-supply:
57 description:
58 The input supply for DCDC_REG1.
59
60 vcc2-supply:
61 description:
62 The input supply for DCDC_REG2.
63
64 vcc3-supply:
65 description:
66 The input supply for DCDC_REG3.
67
68 vcc4-supply:
69 description:
70 The input supply for DCDC_REG4.
71
72 vcc5-supply:
73 description:
74 The input supply for LDO_REG1 and LDO_REG2.
75
76 vcc6-supply:
77 description:
78 The input supply for LDO_REG3.
79
80 regulators:
81 type: object
82 patternProperties:
83 "^(DCDC_REG[1-4]|LDO_REG[1-3])$":
84 type: object
85 $ref: ../regulator/regulator.yaml#
86 unevaluatedProperties: false
87 unevaluatedProperties: false
88
89allOf:
90 - if:
91 properties:
92 '#clock-cells':
93 const: 0
94
95 then:
96 properties:
97 clock-output-names:
98 maxItems: 1
99
100 else:
101 properties:
102 clock-output-names:
103 maxItems: 2
104
105required:
106 - compatible
107 - reg
108 - interrupts
109 - "#clock-cells"
110
111additionalProperties: false
112
113examples:
114 - |
115 #include <dt-bindings/pinctrl/rockchip.h>
116 #include <dt-bindings/interrupt-controller/irq.h>
117 #include <dt-bindings/gpio/gpio.h>
118 i2c {
119 #address-cells = <1>;
120 #size-cells = <0>;
121
122 pmic@18 {
123 compatible = "rockchip,rk805";
124 reg = <0x18>;
125 interrupt-parent = <&gpio2>;
126 interrupts = <RK_PA6 IRQ_TYPE_LEVEL_LOW>;
127 pinctrl-names = "default";
128 pinctrl-0 = <&pmic_int_l>;
129 rockchip,system-power-controller;
130 wakeup-source;
131 #clock-cells = <0>;
132
133 vcc1-supply = <&vcc_sys>;
134 vcc2-supply = <&vcc_sys>;
135 vcc3-supply = <&vcc_sys>;
136 vcc4-supply = <&vcc_sys>;
137 vcc5-supply = <&vcc_io>;
138 vcc6-supply = <&vcc_io>;
139
140 regulators {
141 vdd_logic: DCDC_REG1 {
142 regulator-name = "vdd_logic";
143 regulator-min-microvolt = <700000>;
144 regulator-max-microvolt = <1350000>;
145 regulator-always-on;
146 regulator-boot-on;
147 regulator-state-mem {
148 regulator-on-in-suspend;
149 regulator-suspend-microvolt = <1000000>;
150 };
151 };
152
153 vdd_arm: DCDC_REG2 {
154 regulator-name = "vdd_arm";
155 regulator-min-microvolt = <700000>;
156 regulator-max-microvolt = <1350000>;
157 regulator-always-on;
158 regulator-boot-on;
159 regulator-state-mem {
160 regulator-on-in-suspend;
161 regulator-suspend-microvolt = <950000>;
162 };
163 };
164
165 vcc_ddr: DCDC_REG3 {
166 regulator-name = "vcc_ddr";
167 regulator-always-on;
168 regulator-boot-on;
169 regulator-state-mem {
170 regulator-on-in-suspend;
171 };
172 };
173
174 vcc_io: DCDC_REG4 {
175 regulator-name = "vcc_io";
176 regulator-min-microvolt = <3300000>;
177 regulator-max-microvolt = <3300000>;
178 regulator-always-on;
179 regulator-boot-on;
180 regulator-state-mem {
181 regulator-on-in-suspend;
182 regulator-suspend-microvolt = <3300000>;
183 };
184 };
185
186 vdd_18: LDO_REG1 {
187 regulator-name = "vdd_18";
188 regulator-min-microvolt = <1800000>;
189 regulator-max-microvolt = <1800000>;
190 regulator-always-on;
191 regulator-boot-on;
192 regulator-state-mem {
193 regulator-on-in-suspend;
194 regulator-suspend-microvolt = <1800000>;
195 };
196 };
197
198 vcc18_emmc: LDO_REG2 {
199 regulator-name = "vcc_18emmc";
200 regulator-min-microvolt = <1800000>;
201 regulator-max-microvolt = <1800000>;
202 regulator-always-on;
203 regulator-boot-on;
204 regulator-state-mem {
205 regulator-on-in-suspend;
206 regulator-suspend-microvolt = <1800000>;
207 };
208 };
209
210 vdd_11: LDO_REG3 {
211 regulator-name = "vdd_11";
212 regulator-min-microvolt = <1100000>;
213 regulator-max-microvolt = <1100000>;
214 regulator-always-on;
215 regulator-boot-on;
216 regulator-state-mem {
217 regulator-on-in-suspend;
218 regulator-suspend-microvolt = <1100000>;
219 };
220 };
221 };
222 };
223 };