1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/mt6359-regulator.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MT6359 Regulator from MediaTek Integrated
8
9maintainers:
10  - Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com>
11
12description: |
13  List of regulators provided by this controller. It is named
14  according to its regulator type, buck_<name> and ldo_<name>.
15  MT6359 regulators node should be sub node of the MT6397 MFD node.
16
17patternProperties:
18  "^buck_v(s1|gpu11|modem|pu|core|s2|pa|proc2|proc1|core_sshub)$":
19    type: object
20    $ref: regulator.yaml#
21
22    properties:
23      regulator-name:
24        pattern: "^v(s1|gpu11|modem|pu|core|s2|pa|proc2|proc1|core_sshub)$"
25
26    unevaluatedProperties: false
27
28  "^ldo_v(ibr|rf12|usb|camio|efuse|xo22)$":
29    type: object
30    $ref: regulator.yaml#
31
32    properties:
33      regulator-name:
34        pattern: "^v(ibr|rf12|usb|camio|efuse|xo22)$"
35
36    unevaluatedProperties: false
37
38  "^ldo_v(rfck|emc|a12|a09|ufs|bbck)$":
39    type: object
40    $ref: regulator.yaml#
41
42    properties:
43      regulator-name:
44        pattern: "^v(rfck|emc|a12|a09|ufs|bbck)$"
45
46    unevaluatedProperties: false
47
48  "^ldo_vcn(18|13|33_1_bt|13_1_wifi|33_2_bt|33_2_wifi)$":
49    type: object
50    $ref: regulator.yaml#
51
52    properties:
53      regulator-name:
54        pattern: "^vcn(18|13|33_1_bt|13_1_wifi|33_2_bt|33_2_wifi)$"
55
56    unevaluatedProperties: false
57
58  "^ldo_vsram_(proc2|others|md|proc1|others_sshub)$":
59    type: object
60    $ref: regulator.yaml#
61
62    properties:
63      regulator-name:
64        pattern: "^vsram_(proc2|others|md|proc1|others_sshub)$"
65
66    unevaluatedProperties: false
67
68  "^ldo_v(fe|bif|io)28$":
69    type: object
70    $ref: regulator.yaml#
71
72    properties:
73      regulator-name:
74        pattern: "^v(fe|bif|io)28$"
75
76    unevaluatedProperties: false
77
78  "^ldo_v(aud|io|aux|rf|m)18$":
79    type: object
80    $ref: regulator.yaml#
81
82    properties:
83      regulator-name:
84        pattern: "^v(aud|io|aux|rf|m)18$"
85
86    unevaluatedProperties: false
87
88  "^ldo_vsim[12]$":
89    type: object
90    $ref: regulator.yaml#
91
92    properties:
93      regulator-name:
94        pattern: "^vsim[12]$"
95
96    required:
97      - regulator-name
98
99    unevaluatedProperties: false
100
101additionalProperties: false
102
103examples:
104  - |
105    pmic {
106      regulators {
107        mt6359_vs1_buck_reg: buck_vs1 {
108          regulator-name = "vs1";
109          regulator-min-microvolt = <800000>;
110          regulator-max-microvolt = <2200000>;
111          regulator-enable-ramp-delay = <0>;
112          regulator-always-on;
113        };
114        mt6359_vgpu11_buck_reg: buck_vgpu11 {
115          regulator-name = "vgpu11";
116          regulator-min-microvolt = <400000>;
117          regulator-max-microvolt = <1193750>;
118          regulator-ramp-delay = <5000>;
119          regulator-enable-ramp-delay = <200>;
120          regulator-allowed-modes = <0 1 2>;
121        };
122        mt6359_vmodem_buck_reg: buck_vmodem {
123          regulator-name = "vmodem";
124          regulator-min-microvolt = <400000>;
125          regulator-max-microvolt = <1100000>;
126          regulator-ramp-delay = <10760>;
127          regulator-enable-ramp-delay = <200>;
128        };
129        mt6359_vpu_buck_reg: buck_vpu {
130          regulator-name = "vpu";
131          regulator-min-microvolt = <400000>;
132          regulator-max-microvolt = <1193750>;
133          regulator-ramp-delay = <5000>;
134          regulator-enable-ramp-delay = <200>;
135          regulator-allowed-modes = <0 1 2>;
136        };
137        mt6359_vcore_buck_reg: buck_vcore {
138          regulator-name = "vcore";
139          regulator-min-microvolt = <400000>;
140          regulator-max-microvolt = <1300000>;
141          regulator-ramp-delay = <5000>;
142          regulator-enable-ramp-delay = <200>;
143          regulator-allowed-modes = <0 1 2>;
144        };
145        mt6359_vs2_buck_reg: buck_vs2 {
146          regulator-name = "vs2";
147          regulator-min-microvolt = <800000>;
148          regulator-max-microvolt = <1600000>;
149          regulator-enable-ramp-delay = <0>;
150          regulator-always-on;
151        };
152        mt6359_vpa_buck_reg: buck_vpa {
153          regulator-name = "vpa";
154          regulator-min-microvolt = <500000>;
155          regulator-max-microvolt = <3650000>;
156          regulator-enable-ramp-delay = <300>;
157        };
158        mt6359_vproc2_buck_reg: buck_vproc2 {
159          regulator-name = "vproc2";
160          regulator-min-microvolt = <400000>;
161          regulator-max-microvolt = <1193750>;
162          regulator-ramp-delay = <7500>;
163          regulator-enable-ramp-delay = <200>;
164          regulator-allowed-modes = <0 1 2>;
165        };
166        mt6359_vproc1_buck_reg: buck_vproc1 {
167          regulator-name = "vproc1";
168          regulator-min-microvolt = <400000>;
169          regulator-max-microvolt = <1193750>;
170          regulator-ramp-delay = <7500>;
171          regulator-enable-ramp-delay = <200>;
172          regulator-allowed-modes = <0 1 2>;
173        };
174        mt6359_vcore_sshub_buck_reg: buck_vcore_sshub {
175          regulator-name = "vcore_sshub";
176          regulator-min-microvolt = <400000>;
177          regulator-max-microvolt = <1193750>;
178        };
179        mt6359_vgpu11_sshub_buck_reg: buck_vgpu11_sshub {
180          regulator-name = "vgpu11_sshub";
181          regulator-min-microvolt = <400000>;
182          regulator-max-microvolt = <1193750>;
183        };
184        mt6359_vaud18_ldo_reg: ldo_vaud18 {
185          regulator-name = "vaud18";
186          regulator-min-microvolt = <1800000>;
187          regulator-max-microvolt = <1800000>;
188          regulator-enable-ramp-delay = <240>;
189        };
190        mt6359_vsim1_ldo_reg: ldo_vsim1 {
191          regulator-name = "vsim1";
192          regulator-min-microvolt = <1700000>;
193          regulator-max-microvolt = <3100000>;
194        };
195        mt6359_vibr_ldo_reg: ldo_vibr {
196          regulator-name = "vibr";
197          regulator-min-microvolt = <1200000>;
198          regulator-max-microvolt = <3300000>;
199        };
200        mt6359_vrf12_ldo_reg: ldo_vrf12 {
201          regulator-name = "vrf12";
202          regulator-min-microvolt = <1100000>;
203          regulator-max-microvolt = <1300000>;
204        };
205        mt6359_vusb_ldo_reg: ldo_vusb {
206          regulator-name = "vusb";
207          regulator-min-microvolt = <3000000>;
208          regulator-max-microvolt = <3000000>;
209          regulator-enable-ramp-delay = <960>;
210          regulator-always-on;
211        };
212        mt6359_vsram_proc2_ldo_reg: ldo_vsram_proc2 {
213          regulator-name = "vsram_proc2";
214          regulator-min-microvolt = <500000>;
215          regulator-max-microvolt = <1293750>;
216          regulator-ramp-delay = <7500>;
217          regulator-enable-ramp-delay = <240>;
218          regulator-always-on;
219        };
220        mt6359_vio18_ldo_reg: ldo_vio18 {
221          regulator-name = "vio18";
222          regulator-min-microvolt = <1700000>;
223          regulator-max-microvolt = <1900000>;
224          regulator-enable-ramp-delay = <960>;
225          regulator-always-on;
226        };
227        mt6359_vcamio_ldo_reg: ldo_vcamio {
228          regulator-name = "vcamio";
229          regulator-min-microvolt = <1700000>;
230          regulator-max-microvolt = <1900000>;
231        };
232        mt6359_vcn18_ldo_reg: ldo_vcn18 {
233          regulator-name = "vcn18";
234          regulator-min-microvolt = <1800000>;
235          regulator-max-microvolt = <1800000>;
236          regulator-enable-ramp-delay = <240>;
237        };
238        mt6359_vfe28_ldo_reg: ldo_vfe28 {
239          regulator-name = "vfe28";
240          regulator-min-microvolt = <2800000>;
241          regulator-max-microvolt = <2800000>;
242          regulator-enable-ramp-delay = <120>;
243        };
244        mt6359_vcn13_ldo_reg: ldo_vcn13 {
245          regulator-name = "vcn13";
246          regulator-min-microvolt = <900000>;
247          regulator-max-microvolt = <1300000>;
248        };
249        mt6359_vcn33_1_bt_ldo_reg: ldo_vcn33_1_bt {
250          regulator-name = "vcn33_1_bt";
251          regulator-min-microvolt = <2800000>;
252          regulator-max-microvolt = <3500000>;
253        };
254        mt6359_vcn33_1_wifi_ldo_reg: ldo_vcn33_1_wifi {
255          regulator-name = "vcn33_1_wifi";
256          regulator-min-microvolt = <2800000>;
257          regulator-max-microvolt = <3500000>;
258        };
259        mt6359_vaux18_ldo_reg: ldo_vaux18 {
260          regulator-name = "vaux18";
261          regulator-min-microvolt = <1800000>;
262          regulator-max-microvolt = <1800000>;
263          regulator-enable-ramp-delay = <240>;
264          regulator-always-on;
265        };
266        mt6359_vsram_others_ldo_reg: ldo_vsram_others {
267          regulator-name = "vsram_others";
268          regulator-min-microvolt = <500000>;
269          regulator-max-microvolt = <1293750>;
270          regulator-ramp-delay = <5000>;
271          regulator-enable-ramp-delay = <240>;
272        };
273        mt6359_vefuse_ldo_reg: ldo_vefuse {
274          regulator-name = "vefuse";
275          regulator-min-microvolt = <1700000>;
276          regulator-max-microvolt = <2000000>;
277        };
278        mt6359_vxo22_ldo_reg: ldo_vxo22 {
279          regulator-name = "vxo22";
280          regulator-min-microvolt = <1800000>;
281          regulator-max-microvolt = <2200000>;
282          regulator-always-on;
283        };
284        mt6359_vrfck_ldo_reg: ldo_vrfck {
285          regulator-name = "vrfck";
286          regulator-min-microvolt = <1500000>;
287          regulator-max-microvolt = <1700000>;
288        };
289        mt6359_vrfck_1_ldo_reg: ldo_vrfck_1 {
290          regulator-name = "vrfck";
291          regulator-min-microvolt = <1240000>;
292          regulator-max-microvolt = <1600000>;
293        };
294        mt6359_vbif28_ldo_reg: ldo_vbif28 {
295          regulator-name = "vbif28";
296          regulator-min-microvolt = <2800000>;
297          regulator-max-microvolt = <2800000>;
298          regulator-enable-ramp-delay = <240>;
299        };
300        mt6359_vio28_ldo_reg: ldo_vio28 {
301          regulator-name = "vio28";
302          regulator-min-microvolt = <2800000>;
303          regulator-max-microvolt = <3300000>;
304          regulator-always-on;
305        };
306        mt6359_vemc_ldo_reg: ldo_vemc {
307          regulator-name = "vemc";
308          regulator-min-microvolt = <2900000>;
309          regulator-max-microvolt = <3300000>;
310        };
311        mt6359_vemc_1_ldo_reg: ldo_vemc_1 {
312          regulator-name = "vemc";
313          regulator-min-microvolt = <2500000>;
314          regulator-max-microvolt = <3300000>;
315        };
316        mt6359_vcn33_2_bt_ldo_reg: ldo_vcn33_2_bt {
317          regulator-name = "vcn33_2_bt";
318          regulator-min-microvolt = <2800000>;
319          regulator-max-microvolt = <3500000>;
320        };
321        mt6359_vcn33_2_wifi_ldo_reg: ldo_vcn33_2_wifi {
322          regulator-name = "vcn33_2_wifi";
323          regulator-min-microvolt = <2800000>;
324          regulator-max-microvolt = <3500000>;
325        };
326        mt6359_va12_ldo_reg: ldo_va12 {
327          regulator-name = "va12";
328          regulator-min-microvolt = <1200000>;
329          regulator-max-microvolt = <1300000>;
330          regulator-always-on;
331        };
332        mt6359_va09_ldo_reg: ldo_va09 {
333          regulator-name = "va09";
334          regulator-min-microvolt = <800000>;
335          regulator-max-microvolt = <1200000>;
336        };
337        mt6359_vrf18_ldo_reg: ldo_vrf18 {
338          regulator-name = "vrf18";
339          regulator-min-microvolt = <1700000>;
340          regulator-max-microvolt = <1810000>;
341        };
342        mt6359_vsram_md_ldo_reg: ldo_vsram_md {
343          regulator-name = "vsram_md";
344          regulator-min-microvolt = <500000>;
345          regulator-max-microvolt = <1293750>;
346          regulator-ramp-delay = <10760>;
347          regulator-enable-ramp-delay = <240>;
348        };
349        mt6359_vufs_ldo_reg: ldo_vufs {
350          regulator-name = "vufs";
351          regulator-min-microvolt = <1700000>;
352          regulator-max-microvolt = <1900000>;
353        };
354        mt6359_vm18_ldo_reg: ldo_vm18 {
355          regulator-name = "vm18";
356          regulator-min-microvolt = <1700000>;
357          regulator-max-microvolt = <1900000>;
358          regulator-always-on;
359        };
360        mt6359_vbbck_ldo_reg: ldo_vbbck {
361          regulator-name = "vbbck";
362          regulator-min-microvolt = <1100000>;
363          regulator-max-microvolt = <1200000>;
364        };
365        mt6359_vsram_proc1_ldo_reg: ldo_vsram_proc1 {
366          regulator-name = "vsram_proc1";
367          regulator-min-microvolt = <500000>;
368          regulator-max-microvolt = <1293750>;
369          regulator-ramp-delay = <7500>;
370          regulator-enable-ramp-delay = <240>;
371          regulator-always-on;
372        };
373        mt6359_vsim2_ldo_reg: ldo_vsim2 {
374          regulator-name = "vsim2";
375          regulator-min-microvolt = <1700000>;
376          regulator-max-microvolt = <3100000>;
377        };
378        mt6359_vsram_others_sshub_ldo: ldo_vsram_others_sshub {
379          regulator-name = "vsram_others_sshub";
380          regulator-min-microvolt = <500000>;
381          regulator-max-microvolt = <1293750>;
382        };
383      };
384    };
385...
386