Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / mfd / rk808.txt
1 RK808 Power Management Integrated Circuit
2
3 Required 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
11 Optional 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
28 Regulators: All the regulators of RK808 to be instantiated shall be
29 listed in a child node named 'regulators'. Each regulator is represented
30 by a child node of the 'regulators' node.
31
32         regulator-name {
33                 /* standard regulator bindings here */
34         };
35
36 Following regulators of the RK808 PMIC block are supported. Note that
37 the 'n' in regulator name, as in DCDC_REGn or LDOn, represents the DCDC or LDO
38 number 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
47 Standard regulator bindings are used inside regulator subnodes. Check
48   Documentation/devicetree/bindings/regulator/regulator.txt
49 for more details
50
51 Example:
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         };