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