1MediaTek MT6358 Regulator
2
3All voltage regulators provided by the MT6358 PMIC are described as the
4subnodes of the MT6358 regulators node. Each regulator is named according
5to its regulator type, buck_<name> and ldo_<name>. The definition for each
6of these nodes is defined using the standard binding for regulators at
7Documentation/devicetree/bindings/regulator/regulator.txt.
8
9The valid names for regulators are::
10BUCK:
11  buck_vdram1, buck_vcore, buck_vcore_sshub, buck_vpa, buck_vproc11,
12  buck_vproc12, buck_vgpu, buck_vs2, buck_vmodem, buck_vs1
13LDO:
14  ldo_vdram2, ldo_vsim1, ldo_vibr, ldo_vrf12, ldo_vio18, ldo_vusb, ldo_vcamio,
15  ldo_vcamd, ldo_vcn18, ldo_vfe28, ldo_vsram_proc11, ldo_vcn28, ldo_vsram_others,
16  ldo_vsram_others_sshub, ldo_vsram_gpu, ldo_vxo22, ldo_vefuse, ldo_vaux18,
17  ldo_vmch, ldo_vbif28, ldo_vsram_proc12, ldo_vcama1, ldo_vemc, ldo_vio28, ldo_va12,
18  ldo_vrf18, ldo_vcn33_bt, ldo_vcn33_wifi, ldo_vcama2, ldo_vmc, ldo_vldo28, ldo_vaud28,
19  ldo_vsim2
20
21Example:
22
23	pmic {
24		compatible = "mediatek,mt6358";
25
26		mt6358regulator: mt6358regulator {
27			compatible = "mediatek,mt6358-regulator";
28
29			mt6358_vdram1_reg: buck_vdram1 {
30				regulator-compatible = "buck_vdram1";
31				regulator-name = "vdram1";
32				regulator-min-microvolt = <500000>;
33				regulator-max-microvolt = <2087500>;
34				regulator-ramp-delay = <12500>;
35				regulator-enable-ramp-delay = <0>;
36				regulator-always-on;
37			};
38
39			mt6358_vcore_reg: buck_vcore {
40				regulator-name = "vcore";
41				regulator-min-microvolt = <500000>;
42				regulator-max-microvolt = <1293750>;
43				regulator-ramp-delay = <6250>;
44				regulator-enable-ramp-delay = <200>;
45				regulator-always-on;
46			};
47
48			mt6358_vpa_reg: buck_vpa {
49				regulator-name = "vpa";
50				regulator-min-microvolt = <500000>;
51				regulator-max-microvolt = <3650000>;
52				regulator-ramp-delay = <50000>;
53				regulator-enable-ramp-delay = <250>;
54			};
55
56			mt6358_vproc11_reg: buck_vproc11 {
57				regulator-name = "vproc11";
58				regulator-min-microvolt = <500000>;
59				regulator-max-microvolt = <1293750>;
60				regulator-ramp-delay = <6250>;
61				regulator-enable-ramp-delay = <200>;
62				regulator-always-on;
63			};
64
65			mt6358_vproc12_reg: buck_vproc12 {
66				regulator-name = "vproc12";
67				regulator-min-microvolt = <500000>;
68				regulator-max-microvolt = <1293750>;
69				regulator-ramp-delay = <6250>;
70				regulator-enable-ramp-delay = <200>;
71				regulator-always-on;
72			};
73
74			mt6358_vgpu_reg: buck_vgpu {
75				regulator-name = "vgpu";
76				regulator-min-microvolt = <500000>;
77				regulator-max-microvolt = <1293750>;
78				regulator-ramp-delay = <6250>;
79				regulator-enable-ramp-delay = <200>;
80			};
81
82			mt6358_vs2_reg: buck_vs2 {
83				regulator-name = "vs2";
84				regulator-min-microvolt = <500000>;
85				regulator-max-microvolt = <2087500>;
86				regulator-ramp-delay = <12500>;
87				regulator-enable-ramp-delay = <0>;
88				regulator-always-on;
89			};
90
91			mt6358_vmodem_reg: buck_vmodem {
92				regulator-name = "vmodem";
93				regulator-min-microvolt = <500000>;
94				regulator-max-microvolt = <1293750>;
95				regulator-ramp-delay = <6250>;
96				regulator-enable-ramp-delay = <900>;
97				regulator-always-on;
98			};
99
100			mt6358_vs1_reg: buck_vs1 {
101				regulator-name = "vs1";
102				regulator-min-microvolt = <1000000>;
103				regulator-max-microvolt = <2587500>;
104				regulator-ramp-delay = <12500>;
105				regulator-enable-ramp-delay = <0>;
106				regulator-always-on;
107			};
108
109			mt6358_vdram2_reg: ldo_vdram2 {
110				regulator-name = "vdram2";
111				regulator-min-microvolt = <600000>;
112				regulator-max-microvolt = <1800000>;
113				regulator-enable-ramp-delay = <3300>;
114			};
115
116			mt6358_vsim1_reg: ldo_vsim1 {
117				regulator-name = "vsim1";
118				regulator-min-microvolt = <1700000>;
119				regulator-max-microvolt = <3100000>;
120				regulator-enable-ramp-delay = <540>;
121			};
122
123			mt6358_vibr_reg: ldo_vibr {
124				regulator-name = "vibr";
125				regulator-min-microvolt = <1200000>;
126				regulator-max-microvolt = <3300000>;
127				regulator-enable-ramp-delay = <60>;
128			};
129
130			mt6358_vrf12_reg: ldo_vrf12 {
131				compatible = "regulator-fixed";
132				regulator-name = "vrf12";
133				regulator-min-microvolt = <1200000>;
134				regulator-max-microvolt = <1200000>;
135				regulator-enable-ramp-delay = <120>;
136			};
137
138			mt6358_vio18_reg: ldo_vio18 {
139				compatible = "regulator-fixed";
140				regulator-name = "vio18";
141				regulator-min-microvolt = <1800000>;
142				regulator-max-microvolt = <1800000>;
143				regulator-enable-ramp-delay = <2700>;
144				regulator-always-on;
145			};
146
147			mt6358_vusb_reg: ldo_vusb {
148				regulator-name = "vusb";
149				regulator-min-microvolt = <3000000>;
150				regulator-max-microvolt = <3100000>;
151				regulator-enable-ramp-delay = <270>;
152				regulator-always-on;
153			};
154
155			mt6358_vcamio_reg: ldo_vcamio {
156				compatible = "regulator-fixed";
157				regulator-name = "vcamio";
158				regulator-min-microvolt = <1800000>;
159				regulator-max-microvolt = <1800000>;
160				regulator-enable-ramp-delay = <270>;
161			};
162
163			mt6358_vcamd_reg: ldo_vcamd {
164				regulator-name = "vcamd";
165				regulator-min-microvolt = <900000>;
166				regulator-max-microvolt = <1800000>;
167				regulator-enable-ramp-delay = <270>;
168			};
169
170			mt6358_vcn18_reg: ldo_vcn18 {
171				compatible = "regulator-fixed";
172				regulator-name = "vcn18";
173				regulator-min-microvolt = <1800000>;
174				regulator-max-microvolt = <1800000>;
175				regulator-enable-ramp-delay = <270>;
176			};
177
178			mt6358_vfe28_reg: ldo_vfe28 {
179				compatible = "regulator-fixed";
180				regulator-name = "vfe28";
181				regulator-min-microvolt = <2800000>;
182				regulator-max-microvolt = <2800000>;
183				regulator-enable-ramp-delay = <270>;
184			};
185
186			mt6358_vsram_proc11_reg: ldo_vsram_proc11 {
187				regulator-name = "vsram_proc11";
188				regulator-min-microvolt = <500000>;
189				regulator-max-microvolt = <1293750>;
190				regulator-ramp-delay = <6250>;
191				regulator-enable-ramp-delay = <240>;
192				regulator-always-on;
193			};
194
195			mt6358_vcn28_reg: ldo_vcn28 {
196				compatible = "regulator-fixed";
197				regulator-name = "vcn28";
198				regulator-min-microvolt = <2800000>;
199				regulator-max-microvolt = <2800000>;
200				regulator-enable-ramp-delay = <270>;
201			};
202
203			mt6358_vsram_others_reg: ldo_vsram_others {
204				regulator-name = "vsram_others";
205				regulator-min-microvolt = <500000>;
206				regulator-max-microvolt = <1293750>;
207				regulator-ramp-delay = <6250>;
208				regulator-enable-ramp-delay = <240>;
209				regulator-always-on;
210			};
211
212			mt6358_vsram_gpu_reg: ldo_vsram_gpu {
213				regulator-name = "vsram_gpu";
214				regulator-min-microvolt = <500000>;
215				regulator-max-microvolt = <1293750>;
216				regulator-ramp-delay = <6250>;
217				regulator-enable-ramp-delay = <240>;
218			};
219
220			mt6358_vxo22_reg: ldo_vxo22 {
221				compatible = "regulator-fixed";
222				regulator-name = "vxo22";
223				regulator-min-microvolt = <2200000>;
224				regulator-max-microvolt = <2200000>;
225				regulator-enable-ramp-delay = <120>;
226				regulator-always-on;
227			};
228
229			mt6358_vefuse_reg: ldo_vefuse {
230				regulator-name = "vefuse";
231				regulator-min-microvolt = <1700000>;
232				regulator-max-microvolt = <1900000>;
233				regulator-enable-ramp-delay = <270>;
234			};
235
236			mt6358_vaux18_reg: ldo_vaux18 {
237				compatible = "regulator-fixed";
238				regulator-name = "vaux18";
239				regulator-min-microvolt = <1800000>;
240				regulator-max-microvolt = <1800000>;
241				regulator-enable-ramp-delay = <270>;
242			};
243
244			mt6358_vmch_reg: ldo_vmch {
245				regulator-name = "vmch";
246				regulator-min-microvolt = <2900000>;
247				regulator-max-microvolt = <3300000>;
248				regulator-enable-ramp-delay = <60>;
249			};
250
251			mt6358_vbif28_reg: ldo_vbif28 {
252				compatible = "regulator-fixed";
253				regulator-name = "vbif28";
254				regulator-min-microvolt = <2800000>;
255				regulator-max-microvolt = <2800000>;
256				regulator-enable-ramp-delay = <270>;
257			};
258
259			mt6358_vsram_proc12_reg: ldo_vsram_proc12 {
260				regulator-name = "vsram_proc12";
261				regulator-min-microvolt = <500000>;
262				regulator-max-microvolt = <1293750>;
263				regulator-ramp-delay = <6250>;
264				regulator-enable-ramp-delay = <240>;
265				regulator-always-on;
266			};
267
268			mt6358_vcama1_reg: ldo_vcama1 {
269				regulator-name = "vcama1";
270				regulator-min-microvolt = <1800000>;
271				regulator-max-microvolt = <3000000>;
272				regulator-enable-ramp-delay = <270>;
273			};
274
275			mt6358_vemc_reg: ldo_vemc {
276				regulator-name = "vemc";
277				regulator-min-microvolt = <2900000>;
278				regulator-max-microvolt = <3300000>;
279				regulator-enable-ramp-delay = <60>;
280				regulator-always-on;
281			};
282
283			mt6358_vio28_reg: ldo_vio28 {
284				compatible = "regulator-fixed";
285				regulator-name = "vio28";
286				regulator-min-microvolt = <2800000>;
287				regulator-max-microvolt = <2800000>;
288				regulator-enable-ramp-delay = <270>;
289			};
290
291			mt6358_va12_reg: ldo_va12 {
292				compatible = "regulator-fixed";
293				regulator-name = "va12";
294				regulator-min-microvolt = <1200000>;
295				regulator-max-microvolt = <1200000>;
296				regulator-enable-ramp-delay = <270>;
297				regulator-always-on;
298			};
299
300			mt6358_vrf18_reg: ldo_vrf18 {
301				compatible = "regulator-fixed";
302				regulator-name = "vrf18";
303				regulator-min-microvolt = <1800000>;
304				regulator-max-microvolt = <1800000>;
305				regulator-enable-ramp-delay = <120>;
306			};
307
308			mt6358_vcn33_bt_reg: ldo_vcn33_bt {
309				regulator-name = "vcn33_bt";
310				regulator-min-microvolt = <3300000>;
311				regulator-max-microvolt = <3500000>;
312				regulator-enable-ramp-delay = <270>;
313			};
314
315			mt6358_vcn33_wifi_reg: ldo_vcn33_wifi {
316				regulator-name = "vcn33_wifi";
317				regulator-min-microvolt = <3300000>;
318				regulator-max-microvolt = <3500000>;
319				regulator-enable-ramp-delay = <270>;
320			};
321
322			mt6358_vcama2_reg: ldo_vcama2 {
323				regulator-name = "vcama2";
324				regulator-min-microvolt = <1800000>;
325				regulator-max-microvolt = <3000000>;
326				regulator-enable-ramp-delay = <270>;
327			};
328
329			mt6358_vmc_reg: ldo_vmc {
330				regulator-name = "vmc";
331				regulator-min-microvolt = <1800000>;
332				regulator-max-microvolt = <3300000>;
333				regulator-enable-ramp-delay = <60>;
334			};
335
336			mt6358_vldo28_reg: ldo_vldo28 {
337				regulator-name = "vldo28";
338				regulator-min-microvolt = <2800000>;
339				regulator-max-microvolt = <3000000>;
340				regulator-enable-ramp-delay = <270>;
341			};
342
343			mt6358_vaud28_reg: ldo_vaud28 {
344				compatible = "regulator-fixed";
345				regulator-name = "vaud28";
346				regulator-min-microvolt = <2800000>;
347				regulator-max-microvolt = <2800000>;
348				regulator-enable-ramp-delay = <270>;
349			};
350
351			mt6358_vsim2_reg: ldo_vsim2 {
352				regulator-name = "vsim2";
353				regulator-min-microvolt = <1700000>;
354				regulator-max-microvolt = <3100000>;
355				regulator-enable-ramp-delay = <540>;
356			};
357
358			mt6358_vcore_sshub_reg: buck_vcore_sshub {
359				regulator-name = "vcore_sshub";
360				regulator-min-microvolt = <500000>;
361				regulator-max-microvolt = <1293750>;
362			};
363
364			mt6358_vsram_others_sshub_reg: ldo_vsram_others_sshub {
365				regulator-name = "vsram_others_sshub";
366				regulator-min-microvolt = <500000>;
367				regulator-max-microvolt = <1293750>;
368			};
369		};
370	};
371