1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/mediatek,mt6357-regulator.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MediaTek MT6357 Regulators
8
9maintainers:
10  - Chen Zhong <chen.zhong@mediatek.com>
11  - Fabien Parent <fabien.parent@linaro.org>
12  - Alexandre Mergnat <amergnat@baylibre.com>
13
14description: |
15  The MT6357 PMIC provides 5 BUCK and 29 LDO.
16  Regulators and nodes are named according to the regulator type:
17  - buck-<name>
18  - ldo-<name>.
19  MT6357 regulators node should be sub node of the MT6397 MFD node.
20
21patternProperties:
22  "^buck-v(core|modem|pa|proc|s1)$":
23    type: object
24    $ref: regulator.yaml#
25    unevaluatedProperties: false
26    description:
27      Properties for single BUCK regulator.
28
29    required:
30      - regulator-name
31      - regulator-min-microvolt
32      - regulator-max-microvolt
33
34  "^ldo-v(camio18|aud28|aux18|io18|io28|rf12|rf18|cn18|cn28|fe28)$":
35    type: object
36    $ref: fixed-regulator.yaml#
37    unevaluatedProperties: false
38    description:
39      Properties for single fixed LDO regulator.
40
41    required:
42      - regulator-name
43      - regulator-min-microvolt
44      - regulator-max-microvolt
45
46  "^ldo-v(efuse|ibr|ldo28|mch|cama|camd|cn33-bt|cn33-wifi)$":
47    type: object
48    $ref: regulator.yaml#
49    unevaluatedProperties: false
50    description:
51      Properties for single LDO regulator.
52
53    required:
54      - regulator-name
55      - regulator-min-microvolt
56      - regulator-max-microvolt
57
58  "^ldo-v(xo22|emc|mc|sim1|sim2|sram-others|sram-proc|dram|usb33)$":
59    type: object
60    $ref: regulator.yaml#
61    unevaluatedProperties: false
62    description:
63      Properties for single LDO regulator.
64
65    required:
66      - regulator-name
67      - regulator-min-microvolt
68      - regulator-max-microvolt
69
70additionalProperties: false
71
72examples:
73  - |
74    pmic {
75      regulators {
76        mt6357_vproc_reg: buck-vproc {
77          regulator-name = "vproc";
78          regulator-min-microvolt = <518750>;
79          regulator-max-microvolt = <1312500>;
80          regulator-ramp-delay = <6250>;
81          regulator-enable-ramp-delay = <220>;
82          regulator-always-on;
83        };
84        mt6357_vcore_reg: buck-vcore {
85          regulator-name = "vcore";
86          regulator-min-microvolt = <518750>;
87          regulator-max-microvolt = <1312500>;
88          regulator-ramp-delay = <6250>;
89          regulator-enable-ramp-delay = <220>;
90          regulator-always-on;
91        };
92        mt6357_vmodem_reg: buck-vmodem {
93          regulator-name = "vmodem";
94          regulator-min-microvolt = <500000>;
95          regulator-max-microvolt = <1193750>;
96          regulator-ramp-delay = <6250>;
97          regulator-enable-ramp-delay = <220>;
98        };
99        mt6357_vs1_reg: buck-vs1 {
100          regulator-name = "vs1";
101          regulator-min-microvolt = <1200000>;
102          regulator-max-microvolt = <2200000>;
103          regulator-ramp-delay = <12500>;
104          regulator-enable-ramp-delay = <220>;
105          regulator-always-on;
106        };
107        mt6357_vpa_reg: buck-vpa {
108          regulator-name = "vpa";
109          regulator-min-microvolt = <500000>;
110          regulator-max-microvolt = <3650000>;
111          regulator-ramp-delay = <50000>;
112          regulator-enable-ramp-delay = <220>;
113        };
114        mt6357_vfe28_reg: ldo-vfe28 {
115          compatible = "regulator-fixed";
116          regulator-name = "vfe28";
117          regulator-min-microvolt = <2800000>;
118          regulator-max-microvolt = <2800000>;
119          regulator-enable-ramp-delay = <264>;
120        };
121        mt6357_vxo22_reg: ldo-vxo22 {
122          regulator-name = "vxo22";
123          regulator-min-microvolt = <2200000>;
124          regulator-max-microvolt = <2400000>;
125          regulator-enable-ramp-delay = <110>;
126        };
127        mt6357_vrf18_reg: ldo-vrf18 {
128          compatible = "regulator-fixed";
129          regulator-name = "vrf18";
130          regulator-min-microvolt = <1800000>;
131          regulator-max-microvolt = <1800000>;
132          regulator-enable-ramp-delay = <110>;
133        };
134        mt6357_vrf12_reg: ldo-vrf12 {
135          compatible = "regulator-fixed";
136          regulator-name = "vrf12";
137          regulator-min-microvolt = <1200000>;
138          regulator-max-microvolt = <1200000>;
139          regulator-enable-ramp-delay = <110>;
140        };
141        mt6357_vefuse_reg: ldo-vefuse {
142          regulator-name = "vefuse";
143          regulator-min-microvolt = <1200000>;
144          regulator-max-microvolt = <3300000>;
145          regulator-enable-ramp-delay = <264>;
146        };
147        mt6357_vcn33_bt_reg: ldo-vcn33-bt {
148          regulator-name = "vcn33-bt";
149          regulator-min-microvolt = <3300000>;
150          regulator-max-microvolt = <3500000>;
151          regulator-enable-ramp-delay = <264>;
152        };
153        mt6357_vcn33_wifi_reg: ldo-vcn33-wifi {
154          regulator-name = "vcn33-wifi";
155          regulator-min-microvolt = <3300000>;
156          regulator-max-microvolt = <3500000>;
157          regulator-enable-ramp-delay = <264>;
158        };
159        mt6357_vcn28_reg: ldo-vcn28 {
160          compatible = "regulator-fixed";
161          regulator-name = "vcn28";
162          regulator-min-microvolt = <2800000>;
163          regulator-max-microvolt = <2800000>;
164          regulator-enable-ramp-delay = <264>;
165        };
166        mt6357_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 = <264>;
172        };
173        mt6357_vcama_reg: ldo-vcama {
174          regulator-name = "vcama";
175          regulator-min-microvolt = <2500000>;
176          regulator-max-microvolt = <2800000>;
177          regulator-enable-ramp-delay = <264>;
178        };
179        mt6357_vcamd_reg: ldo-vcamd {
180          regulator-name = "vcamd";
181          regulator-min-microvolt = <1000000>;
182          regulator-max-microvolt = <1800000>;
183          regulator-enable-ramp-delay = <264>;
184        };
185        mt6357_vcamio_reg: ldo-vcamio18 {
186          compatible = "regulator-fixed";
187          regulator-name = "vcamio";
188          regulator-min-microvolt = <1800000>;
189          regulator-max-microvolt = <1800000>;
190          regulator-enable-ramp-delay = <264>;
191        };
192        mt6357_vldo28_reg: ldo-vldo28 {
193          regulator-name = "vldo28";
194          regulator-min-microvolt = <2800000>;
195          regulator-max-microvolt = <3000000>;
196          regulator-enable-ramp-delay = <264>;
197        };
198        mt6357_vsram_others_reg: ldo-vsram-others {
199          regulator-name = "vsram-others";
200          regulator-min-microvolt = <518750>;
201          regulator-max-microvolt = <1312500>;
202          regulator-ramp-delay = <6250>;
203          regulator-enable-ramp-delay = <110>;
204          regulator-always-on;
205        };
206        mt6357_vsram_proc_reg: ldo-vsram-proc {
207          regulator-name = "vsram-proc";
208          regulator-min-microvolt = <518750>;
209          regulator-max-microvolt = <1312500>;
210          regulator-ramp-delay = <6250>;
211          regulator-enable-ramp-delay = <110>;
212          regulator-always-on;
213        };
214        mt6357_vaux18_reg: ldo-vaux18 {
215          compatible = "regulator-fixed";
216          regulator-name = "vaux18";
217          regulator-min-microvolt = <1800000>;
218          regulator-max-microvolt = <1800000>;
219          regulator-enable-ramp-delay = <264>;
220        };
221        mt6357_vaud28_reg: ldo-vaud28 {
222          compatible = "regulator-fixed";
223          regulator-name = "vaud28";
224          regulator-min-microvolt = <2800000>;
225          regulator-max-microvolt = <2800000>;
226          regulator-enable-ramp-delay = <264>;
227        };
228        mt6357_vio28_reg: ldo-vio28 {
229          compatible = "regulator-fixed";
230          regulator-name = "vio28";
231          regulator-min-microvolt = <2800000>;
232          regulator-max-microvolt = <2800000>;
233          regulator-enable-ramp-delay = <264>;
234        };
235        mt6357_vio18_reg: ldo-vio18 {
236          compatible = "regulator-fixed";
237          regulator-name = "vio18";
238          regulator-min-microvolt = <1800000>;
239          regulator-max-microvolt = <1800000>;
240          regulator-enable-ramp-delay = <264>;
241          regulator-always-on;
242        };
243        mt6357_vdram_reg: ldo-vdram {
244          regulator-name = "vdram";
245          regulator-min-microvolt = <1100000>;
246          regulator-max-microvolt = <1200000>;
247          regulator-enable-ramp-delay = <3300>;
248        };
249        mt6357_vmc_reg: ldo-vmc {
250          regulator-name = "vmc";
251          regulator-min-microvolt = <1800000>;
252          regulator-max-microvolt = <3300000>;
253          regulator-enable-ramp-delay = <44>;
254        };
255        mt6357_vmch_reg: ldo-vmch {
256          regulator-name = "vmch";
257          regulator-min-microvolt = <2900000>;
258          regulator-max-microvolt = <3300000>;
259          regulator-enable-ramp-delay = <44>;
260        };
261        mt6357_vemc_reg: ldo-vemc {
262          regulator-name = "vemc";
263          regulator-min-microvolt = <2900000>;
264          regulator-max-microvolt = <3300000>;
265          regulator-enable-ramp-delay = <44>;
266          regulator-always-on;
267        };
268        mt6357_vsim1_reg: ldo-vsim1 {
269          regulator-name = "vsim1";
270          regulator-min-microvolt = <1700000>;
271          regulator-max-microvolt = <3100000>;
272          regulator-enable-ramp-delay = <264>;
273        };
274        mt6357_vsim2_reg: ldo-vsim2 {
275          regulator-name = "vsim2";
276          regulator-min-microvolt = <1700000>;
277          regulator-max-microvolt = <3100000>;
278          regulator-enable-ramp-delay = <264>;
279        };
280        mt6357_vibr_reg: ldo-vibr {
281          regulator-name = "vibr";
282          regulator-min-microvolt = <1200000>;
283          regulator-max-microvolt = <3300000>;
284          regulator-enable-ramp-delay = <44>;
285        };
286        mt6357_vusb33_reg: ldo-vusb33 {
287          regulator-name = "vusb33";
288          regulator-min-microvolt = <3000000>;
289          regulator-max-microvolt = <3100000>;
290          regulator-enable-ramp-delay = <264>;
291        };
292      };
293    };
294...
295