1RK808 Power Management Integrated Circuit
2
3Required properties:
4- compatible: "rockchip,rk808"
5- reg: I2C slave address
6- interrupt-parent: The parent interrupt controller.
7- interrupts: the interrupt outputs of the controller.
8- #clock-cells: from common clock binding; shall be set to 1 (multiple clock
9  outputs). See <dt-bindings/clock/rockchip,rk808.h> for clock IDs.
10
11Optional properties:
12- clock-output-names: From common clock binding to override the
13  default output clock name
14- rockchip,system-power-controller: Telling whether or not this pmic is controlling
15  the system power.
16- vcc1-supply:  The input supply for DCDC_REG1
17- vcc2-supply:  The input supply for DCDC_REG2
18- vcc3-supply:  The input supply for DCDC_REG3
19- vcc4-supply:  The input supply for DCDC_REG4
20- vcc6-supply:  The input supply for LDO_REG1 and LDO_REG2
21- vcc7-supply:  The input supply for LDO_REG3 and LDO_REG7
22- vcc8-supply:  The input supply for SWITCH_REG1
23- vcc9-supply:  The input supply for LDO_REG4 and LDO_REG5
24- vcc10-supply: The input supply for LDO_REG6
25- vcc11-supply: The input supply for LDO_REG8
26- vcc12-supply: The input supply for SWITCH_REG2
27
28Regulators: All the regulators of RK808 to be instantiated shall be
29listed in a child node named 'regulators'. Each regulator is represented
30by a child node of the 'regulators' node.
31
32	regulator-name {
33		/* standard regulator bindings here */
34	};
35
36Following regulators of the RK808 PMIC block are supported. Note that
37the 'n' in regulator name, as in DCDC_REGn or LDOn, represents the DCDC or LDO
38number as described in RK808 datasheet.
39
40	- DCDC_REGn
41		- valid values for n are 1 to 4.
42	- LDO_REGn
43		- valid values for n are 1 to 8.
44	- SWITCH_REGn
45		- valid values for n are 1 to 2
46
47Standard regulator bindings are used inside regulator subnodes. Check
48  Documentation/devicetree/bindings/regulator/regulator.txt
49for more details
50
51Example:
52	rk808: pmic@1b {
53		compatible = "rockchip,rk808";
54		clock-output-names = "xin32k", "rk808-clkout2";
55		interrupt-parent = <&gpio0>;
56		interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
57		pinctrl-names = "default";
58		pinctrl-0 = <&pmic_int>;
59		reg = <0x1b>;
60		rockchip,system-power-controller;
61		wakeup-source;
62		#clock-cells = <1>;
63
64		vcc8-supply = <&vcc_18>;
65		vcc9-supply = <&vcc_io>;
66		vcc10-supply = <&vcc_io>;
67		vcc12-supply = <&vcc_io>;
68		vddio-supply = <&vccio_pmu>;
69
70		regulators {
71			vdd_cpu: DCDC_REG1 {
72				regulator-always-on;
73				regulator-boot-on;
74				regulator-min-microvolt = <750000>;
75				regulator-max-microvolt = <1300000>;
76				regulator-name = "vdd_arm";
77			};
78
79			vdd_gpu: DCDC_REG2 {
80				regulator-always-on;
81				regulator-boot-on;
82				regulator-min-microvolt = <850000>;
83				regulator-max-microvolt = <1250000>;
84				regulator-name = "vdd_gpu";
85			};
86
87			vcc_ddr: DCDC_REG3 {
88				regulator-always-on;
89				regulator-boot-on;
90				regulator-name = "vcc_ddr";
91			};
92
93			vcc_io: DCDC_REG4 {
94				regulator-always-on;
95				regulator-boot-on;
96				regulator-min-microvolt = <3300000>;
97				regulator-max-microvolt = <3300000>;
98				regulator-name = "vcc_io";
99			};
100
101			vccio_pmu: LDO_REG1 {
102				regulator-always-on;
103				regulator-boot-on;
104				regulator-min-microvolt = <3300000>;
105				regulator-max-microvolt = <3300000>;
106				regulator-name = "vccio_pmu";
107			};
108
109			vcc_tp: LDO_REG2 {
110				regulator-always-on;
111				regulator-boot-on;
112				regulator-min-microvolt = <3300000>;
113				regulator-max-microvolt = <3300000>;
114				regulator-name = "vcc_tp";
115			};
116
117			vdd_10: LDO_REG3 {
118				regulator-always-on;
119				regulator-boot-on;
120				regulator-min-microvolt = <1000000>;
121				regulator-max-microvolt = <1000000>;
122				regulator-name = "vdd_10";
123			};
124
125			vcc18_lcd: LDO_REG4 {
126				regulator-always-on;
127				regulator-boot-on;
128				regulator-min-microvolt = <1800000>;
129				regulator-max-microvolt = <1800000>;
130				regulator-name = "vcc18_lcd";
131			};
132
133			vccio_sd: LDO_REG5 {
134				regulator-always-on;
135				regulator-boot-on;
136				regulator-min-microvolt = <1800000>;
137				regulator-max-microvolt = <3300000>;
138				regulator-name = "vccio_sd";
139			};
140
141			vdd10_lcd: LDO_REG6 {
142				regulator-always-on;
143				regulator-boot-on;
144				regulator-min-microvolt = <1000000>;
145				regulator-max-microvolt = <1000000>;
146				regulator-name = "vdd10_lcd";
147			};
148
149			vcc_18: LDO_REG7 {
150				regulator-always-on;
151				regulator-boot-on;
152				regulator-min-microvolt = <1800000>;
153				regulator-max-microvolt = <1800000>;
154				regulator-name = "vcc_18";
155			};
156
157			vcca_codec: LDO_REG8 {
158				regulator-always-on;
159				regulator-boot-on;
160				regulator-min-microvolt = <3300000>;
161				regulator-max-microvolt = <3300000>;
162				regulator-name = "vcca_codec";
163			};
164
165			vcc_wl: SWITCH_REG1 {
166				regulator-always-on;
167				regulator-boot-on;
168				regulator-name = "vcc_wl";
169			};
170
171			vcc_lcd: SWITCH_REG2 {
172				regulator-always-on;
173				regulator-boot-on;
174				regulator-name = "vcc_lcd";
175			};
176		};
177	};
178