Merge branch 'work.gfs2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / mfd / axp20x.txt
1 AXP family PMIC device tree bindings
2
3 The axp20x family current members :
4 axp152 (X-Powers)
5 axp202 (X-Powers)
6 axp209 (X-Powers)
7 axp221 (X-Powers)
8 axp223 (X-Powers)
9 axp803 (X-Powers)
10 axp806 (X-Powers)
11 axp809 (X-Powers)
12 axp813 (X-Powers)
13
14 The AXP813 is 2 chips packaged into 1. The 2 chips do not share anything
15 other than the packaging. Pins are routed separately. As such they should
16 be treated as separate entities. The other half is an AC100 RTC/codec
17 combo chip. Please see ./ac100.txt for its bindings.
18
19 Required properties:
20 - compatible: should be one of:
21     * "x-powers,axp152"
22     * "x-powers,axp202"
23     * "x-powers,axp209"
24     * "x-powers,axp221"
25     * "x-powers,axp223"
26     * "x-powers,axp803"
27     * "x-powers,axp806"
28     * "x-powers,axp805", "x-powers,axp806"
29     * "x-powers,axp305", "x-powers,axp805", "x-powers,axp806"
30     * "x-powers,axp809"
31     * "x-powers,axp813"
32 - reg: The I2C slave address or RSB hardware address for the AXP chip
33 - interrupt-controller: The PMIC has its own internal IRQs
34 - #interrupt-cells: Should be set to 1
35
36 Supported common regulator properties, see ../regulator/regulator.txt for
37 more information:
38 - regulator-ramp-delay: sets the ramp up delay in uV/us
39                         AXP20x/DCDC2: 1600, 800
40                         AXP20x/LDO3:  1600, 800
41 - regulator-soft-start: enable the output at the lowest possible voltage and
42                         only then set the desired voltage
43                         AXP20x/LDO3: software-based implementation
44
45 Optional properties:
46 - interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
47 - x-powers,dcdc-freq: defines the work frequency of DC-DC in KHz
48                       AXP152/20X: range:  750-1875, Default: 1.5 MHz
49                       AXP22X/8XX: range: 1800-4050, Default: 3   MHz
50
51 - x-powers,drive-vbus-en: boolean, set this when the N_VBUSEN pin is
52                           used as an output pin to control an external
53                           regulator to drive the OTG VBus, rather then
54                           as an input pin which signals whether the
55                           board is driving OTG VBus or not.
56                           (axp221 / axp223 / axp803/ axp813 only)
57
58 - x-powers,self-working-mode and
59   x-powers,master-mode: Boolean (axp806 only). Set either of these when the
60                         PMIC is wired for self-working mode or master mode.
61                         If neither is set then slave mode is assumed.
62                         This corresponds to how the MODESET pin is wired.
63
64 - <input>-supply: a phandle to the regulator supply node. May be omitted if
65                   inputs are unregulated, such as using the IPSOUT output
66                   from the PMIC.
67
68 - regulators: A node that houses a sub-node for each regulator. Regulators
69               not used but preferred to be managed by the OS should be
70               listed as well.
71               See Documentation/devicetree/bindings/regulator/regulator.txt
72               for more information on standard regulator bindings.
73
74 Optional properties for DCDC regulators:
75 - x-powers,dcdc-workmode: 1 for PWM mode, 0 for AUTO (PWM/PFM) mode
76                           Default: Current hardware setting
77                           The DCDC regulators work in a mixed PWM/PFM mode,
78                           using PFM under light loads and switching to PWM
79                           for heavier loads. Forcing PWM mode trades efficiency
80                           under light loads for lower output noise. This
81                           probably makes sense for HiFi audio related
82                           applications that aren't battery constrained.
83
84 AXP202/AXP209 regulators, type, and corresponding input supply names:
85
86 Regulator         Type            Supply Name             Notes
87 ---------         ----            -----------             -----
88 DCDC2           : DC-DC buck    : vin2-supply
89 DCDC3           : DC-DC buck    : vin3-supply
90 LDO1            : LDO           : acin-supply           : always on
91 LDO2            : LDO           : ldo24in-supply        : shared supply
92 LDO3            : LDO           : ldo3in-supply
93 LDO4            : LDO           : ldo24in-supply        : shared supply
94 LDO5            : LDO           : ldo5in-supply
95
96 AXP221/AXP223 regulators, type, and corresponding input supply names:
97
98 Regulator         Type            Supply Name             Notes
99 ---------         ----            -----------             -----
100 DCDC1           : DC-DC buck    : vin1-supply
101 DCDC2           : DC-DC buck    : vin2-supply
102 DCDC3           : DC-DC buck    : vin3-supply
103 DCDC4           : DC-DC buck    : vin4-supply
104 DCDC5           : DC-DC buck    : vin5-supply
105 DC1SW           : On/Off Switch :                       : DCDC1 secondary output
106 DC5LDO          : LDO           :                       : input from DCDC5
107 ALDO1           : LDO           : aldoin-supply         : shared supply
108 ALDO2           : LDO           : aldoin-supply         : shared supply
109 ALDO3           : LDO           : aldoin-supply         : shared supply
110 DLDO1           : LDO           : dldoin-supply         : shared supply
111 DLDO2           : LDO           : dldoin-supply         : shared supply
112 DLDO3           : LDO           : dldoin-supply         : shared supply
113 DLDO4           : LDO           : dldoin-supply         : shared supply
114 ELDO1           : LDO           : eldoin-supply         : shared supply
115 ELDO2           : LDO           : eldoin-supply         : shared supply
116 ELDO3           : LDO           : eldoin-supply         : shared supply
117 LDO_IO0         : LDO           : ips-supply            : GPIO 0
118 LDO_IO1         : LDO           : ips-supply            : GPIO 1
119 RTC_LDO         : LDO           : ips-supply            : always on
120 DRIVEVBUS       : Enable output : drivevbus-supply      : external regulator
121
122 AXP803 regulators, type, and corresponding input supply names:
123
124 Regulator         Type            Supply Name             Notes
125 ---------         ----            -----------             -----
126 DCDC1           : DC-DC buck    : vin1-supply
127 DCDC2           : DC-DC buck    : vin2-supply           : poly-phase capable
128 DCDC3           : DC-DC buck    : vin3-supply           : poly-phase capable
129 DCDC4           : DC-DC buck    : vin4-supply
130 DCDC5           : DC-DC buck    : vin5-supply           : poly-phase capable
131 DCDC6           : DC-DC buck    : vin6-supply           : poly-phase capable
132 DC1SW           : On/Off Switch :                       : DCDC1 secondary output
133 ALDO1           : LDO           : aldoin-supply         : shared supply
134 ALDO2           : LDO           : aldoin-supply         : shared supply
135 ALDO3           : LDO           : aldoin-supply         : shared supply
136 DLDO1           : LDO           : dldoin-supply         : shared supply
137 DLDO2           : LDO           : dldoin-supply         : shared supply
138 DLDO3           : LDO           : dldoin-supply         : shared supply
139 DLDO4           : LDO           : dldoin-supply         : shared supply
140 ELDO1           : LDO           : eldoin-supply         : shared supply
141 ELDO2           : LDO           : eldoin-supply         : shared supply
142 ELDO3           : LDO           : eldoin-supply         : shared supply
143 FLDO1           : LDO           : fldoin-supply         : shared supply
144 FLDO2           : LDO           : fldoin-supply         : shared supply
145 LDO_IO0         : LDO           : ips-supply            : GPIO 0
146 LDO_IO1         : LDO           : ips-supply            : GPIO 1
147 RTC_LDO         : LDO           : ips-supply            : always on
148 DRIVEVBUS       : Enable output : drivevbus-supply      : external regulator
149
150 AXP806 regulators, type, and corresponding input supply names:
151
152 Regulator         Type            Supply Name             Notes
153 ---------         ----            -----------             -----
154 DCDCA           : DC-DC buck    : vina-supply           : poly-phase capable
155 DCDCB           : DC-DC buck    : vinb-supply           : poly-phase capable
156 DCDCC           : DC-DC buck    : vinc-supply           : poly-phase capable
157 DCDCD           : DC-DC buck    : vind-supply           : poly-phase capable
158 DCDCE           : DC-DC buck    : vine-supply           : poly-phase capable
159 ALDO1           : LDO           : aldoin-supply         : shared supply
160 ALDO2           : LDO           : aldoin-supply         : shared supply
161 ALDO3           : LDO           : aldoin-supply         : shared supply
162 BLDO1           : LDO           : bldoin-supply         : shared supply
163 BLDO2           : LDO           : bldoin-supply         : shared supply
164 BLDO3           : LDO           : bldoin-supply         : shared supply
165 BLDO4           : LDO           : bldoin-supply         : shared supply
166 CLDO1           : LDO           : cldoin-supply         : shared supply
167 CLDO2           : LDO           : cldoin-supply         : shared supply
168 CLDO3           : LDO           : cldoin-supply         : shared supply
169 SW              : On/Off Switch : swin-supply
170
171 Additionally, the AXP806 DC-DC regulators support poly-phase arrangements
172 for higher output current. The possible groupings are: A+B, A+B+C, D+E.
173
174 AXP809 regulators, type, and corresponding input supply names:
175
176 Regulator         Type            Supply Name             Notes
177 ---------         ----            -----------             -----
178 DCDC1           : DC-DC buck    : vin1-supply
179 DCDC2           : DC-DC buck    : vin2-supply
180 DCDC3           : DC-DC buck    : vin3-supply
181 DCDC4           : DC-DC buck    : vin4-supply
182 DCDC5           : DC-DC buck    : vin5-supply
183 DC1SW           : On/Off Switch :                       : DCDC1 secondary output
184 DC5LDO          : LDO           :                       : input from DCDC5
185 ALDO1           : LDO           : aldoin-supply         : shared supply
186 ALDO2           : LDO           : aldoin-supply         : shared supply
187 ALDO3           : LDO           : aldoin-supply         : shared supply
188 DLDO1           : LDO           : dldoin-supply         : shared supply
189 DLDO2           : LDO           : dldoin-supply         : shared supply
190 ELDO1           : LDO           : eldoin-supply         : shared supply
191 ELDO2           : LDO           : eldoin-supply         : shared supply
192 ELDO3           : LDO           : eldoin-supply         : shared supply
193 LDO_IO0         : LDO           : ips-supply            : GPIO 0
194 LDO_IO1         : LDO           : ips-supply            : GPIO 1
195 RTC_LDO         : LDO           : ips-supply            : always on
196 SW              : On/Off Switch : swin-supply
197
198 AXP813 regulators, type, and corresponding input supply names:
199
200 Regulator         Type            Supply Name             Notes
201 ---------         ----            -----------             -----
202 DCDC1           : DC-DC buck    : vin1-supply
203 DCDC2           : DC-DC buck    : vin2-supply           : poly-phase capable
204 DCDC3           : DC-DC buck    : vin3-supply           : poly-phase capable
205 DCDC4           : DC-DC buck    : vin4-supply
206 DCDC5           : DC-DC buck    : vin5-supply           : poly-phase capable
207 DCDC6           : DC-DC buck    : vin6-supply           : poly-phase capable
208 DCDC7           : DC-DC buck    : vin7-supply
209 ALDO1           : LDO           : aldoin-supply         : shared supply
210 ALDO2           : LDO           : aldoin-supply         : shared supply
211 ALDO3           : LDO           : aldoin-supply         : shared supply
212 DLDO1           : LDO           : dldoin-supply         : shared supply
213 DLDO2           : LDO           : dldoin-supply         : shared supply
214 DLDO3           : LDO           : dldoin-supply         : shared supply
215 DLDO4           : LDO           : dldoin-supply         : shared supply
216 ELDO1           : LDO           : eldoin-supply         : shared supply
217 ELDO2           : LDO           : eldoin-supply         : shared supply
218 ELDO3           : LDO           : eldoin-supply         : shared supply
219 FLDO1           : LDO           : fldoin-supply         : shared supply
220 FLDO2           : LDO           : fldoin-supply         : shared supply
221 FLDO3           : LDO           : fldoin-supply         : shared supply
222 LDO_IO0         : LDO           : ips-supply            : GPIO 0
223 LDO_IO1         : LDO           : ips-supply            : GPIO 1
224 RTC_LDO         : LDO           : ips-supply            : always on
225 SW              : On/Off Switch : swin-supply
226 DRIVEVBUS       : Enable output : drivevbus-supply      : external regulator
227
228 Example:
229
230 axp209: pmic@34 {
231         compatible = "x-powers,axp209";
232         reg = <0x34>;
233         interrupt-parent = <&nmi_intc>;
234         interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
235         interrupt-controller;
236         #interrupt-cells = <1>;
237
238         regulators {
239                 x-powers,dcdc-freq = <1500>;
240
241                 vdd_cpu: dcdc2 {
242                         regulator-always-on;
243                         regulator-min-microvolt = <1000000>;
244                         regulator-max-microvolt = <1450000>;
245                         regulator-name = "vdd-cpu";
246                 };
247
248                 vdd_int_dll: dcdc3 {
249                         regulator-always-on;
250                         regulator-min-microvolt = <1000000>;
251                         regulator-max-microvolt = <1400000>;
252                         regulator-name = "vdd-int-dll";
253                 };
254
255                 vdd_rtc: ldo1 {
256                         regulator-always-on;
257                         regulator-min-microvolt = <1200000>;
258                         regulator-max-microvolt = <1400000>;
259                         regulator-name = "vdd-rtc";
260                 };
261
262                 avcc: ldo2 {
263                         regulator-always-on;
264                         regulator-min-microvolt = <2700000>;
265                         regulator-max-microvolt = <3300000>;
266                         regulator-name = "avcc";
267                 };
268
269                 ldo3 {
270                         /* unused but preferred to be managed by OS */
271                 };
272         };
273 };