1PFUZE100 family of regulators
2
3Required properties:
4- compatible: "fsl,pfuze100", "fsl,pfuze200", "fsl,pfuze3000", "fsl,pfuze3001"
5- reg: I2C slave address
6
7Optional properties:
8- fsl,pfuze-support-disable-sw: Boolean, if present disable all unused switch
9  regulators to save power consumption. Attention, ensure that all important
10  regulators (e.g. DDR ref, DDR supply) has set the "regulator-always-on"
11  property. If not present, the switched regualtors are always on and can't be
12  disabled. This binding is a workaround to keep backward compatibility with
13  old dtb's which rely on the fact that the switched regulators are always on
14  and don't mark them explicit as "regulator-always-on".
15
16Required child node:
17- regulators: This is the list of child nodes that specify the regulator
18  initialization data for defined regulators. Please refer to below doc
19  Documentation/devicetree/bindings/regulator/regulator.txt.
20
21  The valid names for regulators are:
22  --PFUZE100
23  sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6
24  --PFUZE200
25  sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6,coin
26  --PFUZE3000
27  sw1a,sw1b,sw2,sw3,swbst,vsnvs,vrefddr,vldo1,vldo2,vccsd,v33,vldo3,vldo4
28  --PFUZE3001
29  sw1,sw2,sw3,vsnvs,vldo1,vldo2,vccsd,v33,vldo3,vldo4
30
31Each regulator is defined using the standard binding for regulators.
32
33Example 1: PFUZE100
34
35	pfuze100: pmic@8 {
36		compatible = "fsl,pfuze100";
37		reg = <0x08>;
38
39		regulators {
40			sw1a_reg: sw1ab {
41				regulator-min-microvolt = <300000>;
42				regulator-max-microvolt = <1875000>;
43				regulator-boot-on;
44				regulator-always-on;
45				regulator-ramp-delay = <6250>;
46			};
47
48			sw1c_reg: sw1c {
49				regulator-min-microvolt = <300000>;
50				regulator-max-microvolt = <1875000>;
51				regulator-boot-on;
52				regulator-always-on;
53			};
54
55			sw2_reg: sw2 {
56				regulator-min-microvolt = <800000>;
57				regulator-max-microvolt = <3300000>;
58				regulator-boot-on;
59				regulator-always-on;
60			};
61
62			sw3a_reg: sw3a {
63				regulator-min-microvolt = <400000>;
64				regulator-max-microvolt = <1975000>;
65				regulator-boot-on;
66				regulator-always-on;
67			};
68
69			sw3b_reg: sw3b {
70				regulator-min-microvolt = <400000>;
71				regulator-max-microvolt = <1975000>;
72				regulator-boot-on;
73				regulator-always-on;
74			};
75
76			sw4_reg: sw4 {
77				regulator-min-microvolt = <800000>;
78				regulator-max-microvolt = <3300000>;
79			};
80
81			swbst_reg: swbst {
82				regulator-min-microvolt = <5000000>;
83				regulator-max-microvolt = <5150000>;
84			};
85
86			snvs_reg: vsnvs {
87				regulator-min-microvolt = <1000000>;
88				regulator-max-microvolt = <3000000>;
89				regulator-boot-on;
90				regulator-always-on;
91			};
92
93			vref_reg: vrefddr {
94				regulator-boot-on;
95				regulator-always-on;
96			};
97
98			vgen1_reg: vgen1 {
99				regulator-min-microvolt = <800000>;
100				regulator-max-microvolt = <1550000>;
101			};
102
103			vgen2_reg: vgen2 {
104				regulator-min-microvolt = <800000>;
105				regulator-max-microvolt = <1550000>;
106			};
107
108			vgen3_reg: vgen3 {
109				regulator-min-microvolt = <1800000>;
110				regulator-max-microvolt = <3300000>;
111			};
112
113			vgen4_reg: vgen4 {
114				regulator-min-microvolt = <1800000>;
115				regulator-max-microvolt = <3300000>;
116				regulator-always-on;
117			};
118
119			vgen5_reg: vgen5 {
120				regulator-min-microvolt = <1800000>;
121				regulator-max-microvolt = <3300000>;
122				regulator-always-on;
123			};
124
125			vgen6_reg: vgen6 {
126				regulator-min-microvolt = <1800000>;
127				regulator-max-microvolt = <3300000>;
128				regulator-always-on;
129			};
130		};
131	};
132
133
134Example 2: PFUZE200
135
136	pfuze200: pmic@8 {
137		compatible = "fsl,pfuze200";
138		reg = <0x08>;
139
140		regulators {
141			sw1a_reg: sw1ab {
142				regulator-min-microvolt = <300000>;
143				regulator-max-microvolt = <1875000>;
144				regulator-boot-on;
145				regulator-always-on;
146				regulator-ramp-delay = <6250>;
147			};
148
149			sw2_reg: sw2 {
150				regulator-min-microvolt = <800000>;
151				regulator-max-microvolt = <3300000>;
152				regulator-boot-on;
153				regulator-always-on;
154			};
155
156			sw3a_reg: sw3a {
157				regulator-min-microvolt = <400000>;
158				regulator-max-microvolt = <1975000>;
159				regulator-boot-on;
160				regulator-always-on;
161			};
162
163			sw3b_reg: sw3b {
164				regulator-min-microvolt = <400000>;
165				regulator-max-microvolt = <1975000>;
166				regulator-boot-on;
167				regulator-always-on;
168			};
169
170			swbst_reg: swbst {
171				regulator-min-microvolt = <5000000>;
172				regulator-max-microvolt = <5150000>;
173			};
174
175			snvs_reg: vsnvs {
176				regulator-min-microvolt = <1000000>;
177				regulator-max-microvolt = <3000000>;
178				regulator-boot-on;
179				regulator-always-on;
180			};
181
182			vref_reg: vrefddr {
183				regulator-boot-on;
184				regulator-always-on;
185			};
186
187			vgen1_reg: vgen1 {
188				regulator-min-microvolt = <800000>;
189				regulator-max-microvolt = <1550000>;
190			};
191
192			vgen2_reg: vgen2 {
193				regulator-min-microvolt = <800000>;
194				regulator-max-microvolt = <1550000>;
195			};
196
197			vgen3_reg: vgen3 {
198				regulator-min-microvolt = <1800000>;
199				regulator-max-microvolt = <3300000>;
200			};
201
202			vgen4_reg: vgen4 {
203				regulator-min-microvolt = <1800000>;
204				regulator-max-microvolt = <3300000>;
205				regulator-always-on;
206			};
207
208			vgen5_reg: vgen5 {
209				regulator-min-microvolt = <1800000>;
210				regulator-max-microvolt = <3300000>;
211				regulator-always-on;
212			};
213
214			vgen6_reg: vgen6 {
215				regulator-min-microvolt = <1800000>;
216				regulator-max-microvolt = <3300000>;
217				regulator-always-on;
218			};
219
220			coin_reg: coin {
221				regulator-min-microvolt = <2500000>;
222				regulator-max-microvolt = <3300000>;
223				regulator-always-on;
224			};
225		};
226	};
227
228Example 3: PFUZE3000
229
230	pfuze3000: pmic@8 {
231		compatible = "fsl,pfuze3000";
232		reg = <0x08>;
233
234		regulators {
235			sw1a_reg: sw1a {
236				regulator-min-microvolt = <700000>;
237				regulator-max-microvolt = <1475000>;
238				regulator-boot-on;
239				regulator-always-on;
240				regulator-ramp-delay = <6250>;
241			};
242			/* use sw1c_reg to align with pfuze100/pfuze200 */
243			sw1c_reg: sw1b {
244				regulator-min-microvolt = <700000>;
245				regulator-max-microvolt = <1475000>;
246				regulator-boot-on;
247				regulator-always-on;
248				regulator-ramp-delay = <6250>;
249			};
250
251			sw2_reg: sw2 {
252				regulator-min-microvolt = <2500000>;
253				regulator-max-microvolt = <3300000>;
254				regulator-boot-on;
255				regulator-always-on;
256			};
257
258			sw3a_reg: sw3 {
259				regulator-min-microvolt = <900000>;
260				regulator-max-microvolt = <1650000>;
261				regulator-boot-on;
262				regulator-always-on;
263			};
264
265			swbst_reg: swbst {
266				regulator-min-microvolt = <5000000>;
267				regulator-max-microvolt = <5150000>;
268			};
269
270			snvs_reg: vsnvs {
271				regulator-min-microvolt = <1000000>;
272				regulator-max-microvolt = <3000000>;
273				regulator-boot-on;
274				regulator-always-on;
275			};
276
277			vref_reg: vrefddr {
278				regulator-boot-on;
279				regulator-always-on;
280			};
281
282			vgen1_reg: vldo1 {
283				regulator-min-microvolt = <1800000>;
284				regulator-max-microvolt = <3300000>;
285				regulator-always-on;
286			};
287
288			vgen2_reg: vldo2 {
289				regulator-min-microvolt = <800000>;
290				regulator-max-microvolt = <1550000>;
291			};
292
293			vgen3_reg: vccsd {
294				regulator-min-microvolt = <2850000>;
295				regulator-max-microvolt = <3300000>;
296				regulator-always-on;
297			};
298
299			vgen4_reg: v33 {
300				regulator-min-microvolt = <2850000>;
301				regulator-max-microvolt = <3300000>;
302			};
303
304			vgen5_reg: vldo3 {
305				regulator-min-microvolt = <1800000>;
306				regulator-max-microvolt = <3300000>;
307				regulator-always-on;
308			};
309
310			vgen6_reg: vldo4 {
311				regulator-min-microvolt = <1800000>;
312				regulator-max-microvolt = <3300000>;
313				regulator-always-on;
314			};
315		};
316	};
317
318Example 4: PFUZE 3001
319
320	pfuze3001: pmic@8 {
321		compatible = "fsl,pfuze3001";
322		reg = <0x08>;
323
324		regulators {
325			sw1_reg: sw1 {
326				regulator-min-microvolt = <700000>;
327				regulator-max-microvolt = <3300000>;
328				regulator-boot-on;
329				regulator-always-on;
330			};
331
332			sw2_reg: sw2 {
333				regulator-min-microvolt = <1500000>;
334				regulator-max-microvolt = <3300000>;
335				regulator-boot-on;
336				regulator-always-on;
337			};
338
339			sw3_reg: sw3 {
340				regulator-min-microvolt = <900000>;
341				regulator-max-microvolt = <1650000>;
342				regulator-boot-on;
343				regulator-always-on;
344			};
345
346			snvs_reg: vsnvs {
347				regulator-min-microvolt = <1000000>;
348				regulator-max-microvolt = <3000000>;
349				regulator-boot-on;
350				regulator-always-on;
351			};
352
353			vgen1_reg: vldo1 {
354				regulator-min-microvolt = <1800000>;
355				regulator-max-microvolt = <3300000>;
356				regulator-always-on;
357			};
358
359			vgen2_reg: vldo2 {
360				regulator-min-microvolt = <800000>;
361				regulator-max-microvolt = <1550000>;
362				regulator-always-on;
363			};
364
365			vgen3_reg: vccsd {
366				regulator-min-microvolt = <2850000>;
367				regulator-max-microvolt = <3300000>;
368				regulator-always-on;
369			};
370
371			vgen4_reg: v33 {
372				regulator-min-microvolt = <2850000>;
373				regulator-max-microvolt = <3300000>;
374				regulator-always-on;
375			};
376
377			vgen5_reg: vldo3 {
378				regulator-min-microvolt = <1800000>;
379				regulator-max-microvolt = <3300000>;
380				regulator-always-on;
381			};
382
383			vgen6_reg: vldo4 {
384				regulator-min-microvolt = <1800000>;
385				regulator-max-microvolt = <3300000>;
386				regulator-always-on;
387			};
388		};
389	};
390