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