162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/regulator/mediatek,mt6357-regulator.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: MediaTek MT6357 Regulators
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Chen Zhong <chen.zhong@mediatek.com>
1162306a36Sopenharmony_ci  - Fabien Parent <fabien.parent@linaro.org>
1262306a36Sopenharmony_ci  - Alexandre Mergnat <amergnat@baylibre.com>
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_cidescription: |
1562306a36Sopenharmony_ci  The MT6357 PMIC provides 5 BUCK and 29 LDO.
1662306a36Sopenharmony_ci  Regulators and nodes are named according to the regulator type:
1762306a36Sopenharmony_ci  - buck-<name>
1862306a36Sopenharmony_ci  - ldo-<name>.
1962306a36Sopenharmony_ci  MT6357 regulators node should be sub node of the MT6397 MFD node.
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_cipatternProperties:
2262306a36Sopenharmony_ci  "^buck-v(core|modem|pa|proc|s1)$":
2362306a36Sopenharmony_ci    type: object
2462306a36Sopenharmony_ci    $ref: regulator.yaml#
2562306a36Sopenharmony_ci    unevaluatedProperties: false
2662306a36Sopenharmony_ci    description:
2762306a36Sopenharmony_ci      Properties for single BUCK regulator.
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci    required:
3062306a36Sopenharmony_ci      - regulator-name
3162306a36Sopenharmony_ci      - regulator-min-microvolt
3262306a36Sopenharmony_ci      - regulator-max-microvolt
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci  "^ldo-v(camio18|aud28|aux18|io18|io28|rf12|rf18|cn18|cn28|fe28)$":
3562306a36Sopenharmony_ci    type: object
3662306a36Sopenharmony_ci    $ref: fixed-regulator.yaml#
3762306a36Sopenharmony_ci    unevaluatedProperties: false
3862306a36Sopenharmony_ci    description:
3962306a36Sopenharmony_ci      Properties for single fixed LDO regulator.
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci    required:
4262306a36Sopenharmony_ci      - regulator-name
4362306a36Sopenharmony_ci      - regulator-min-microvolt
4462306a36Sopenharmony_ci      - regulator-max-microvolt
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci  "^ldo-v(efuse|ibr|ldo28|mch|cama|camd|cn33-bt|cn33-wifi)$":
4762306a36Sopenharmony_ci    type: object
4862306a36Sopenharmony_ci    $ref: regulator.yaml#
4962306a36Sopenharmony_ci    unevaluatedProperties: false
5062306a36Sopenharmony_ci    description:
5162306a36Sopenharmony_ci      Properties for single LDO regulator.
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci    required:
5462306a36Sopenharmony_ci      - regulator-name
5562306a36Sopenharmony_ci      - regulator-min-microvolt
5662306a36Sopenharmony_ci      - regulator-max-microvolt
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ci  "^ldo-v(xo22|emc|mc|sim1|sim2|sram-others|sram-proc|dram|usb33)$":
5962306a36Sopenharmony_ci    type: object
6062306a36Sopenharmony_ci    $ref: regulator.yaml#
6162306a36Sopenharmony_ci    unevaluatedProperties: false
6262306a36Sopenharmony_ci    description:
6362306a36Sopenharmony_ci      Properties for single LDO regulator.
6462306a36Sopenharmony_ci
6562306a36Sopenharmony_ci    required:
6662306a36Sopenharmony_ci      - regulator-name
6762306a36Sopenharmony_ci      - regulator-min-microvolt
6862306a36Sopenharmony_ci      - regulator-max-microvolt
6962306a36Sopenharmony_ci
7062306a36Sopenharmony_ciadditionalProperties: false
7162306a36Sopenharmony_ci
7262306a36Sopenharmony_ciexamples:
7362306a36Sopenharmony_ci  - |
7462306a36Sopenharmony_ci    pmic {
7562306a36Sopenharmony_ci      regulators {
7662306a36Sopenharmony_ci        mt6357_vproc_reg: buck-vproc {
7762306a36Sopenharmony_ci          regulator-name = "vproc";
7862306a36Sopenharmony_ci          regulator-min-microvolt = <518750>;
7962306a36Sopenharmony_ci          regulator-max-microvolt = <1312500>;
8062306a36Sopenharmony_ci          regulator-ramp-delay = <6250>;
8162306a36Sopenharmony_ci          regulator-enable-ramp-delay = <220>;
8262306a36Sopenharmony_ci          regulator-always-on;
8362306a36Sopenharmony_ci        };
8462306a36Sopenharmony_ci        mt6357_vcore_reg: buck-vcore {
8562306a36Sopenharmony_ci          regulator-name = "vcore";
8662306a36Sopenharmony_ci          regulator-min-microvolt = <518750>;
8762306a36Sopenharmony_ci          regulator-max-microvolt = <1312500>;
8862306a36Sopenharmony_ci          regulator-ramp-delay = <6250>;
8962306a36Sopenharmony_ci          regulator-enable-ramp-delay = <220>;
9062306a36Sopenharmony_ci          regulator-always-on;
9162306a36Sopenharmony_ci        };
9262306a36Sopenharmony_ci        mt6357_vmodem_reg: buck-vmodem {
9362306a36Sopenharmony_ci          regulator-name = "vmodem";
9462306a36Sopenharmony_ci          regulator-min-microvolt = <500000>;
9562306a36Sopenharmony_ci          regulator-max-microvolt = <1193750>;
9662306a36Sopenharmony_ci          regulator-ramp-delay = <6250>;
9762306a36Sopenharmony_ci          regulator-enable-ramp-delay = <220>;
9862306a36Sopenharmony_ci        };
9962306a36Sopenharmony_ci        mt6357_vs1_reg: buck-vs1 {
10062306a36Sopenharmony_ci          regulator-name = "vs1";
10162306a36Sopenharmony_ci          regulator-min-microvolt = <1200000>;
10262306a36Sopenharmony_ci          regulator-max-microvolt = <2200000>;
10362306a36Sopenharmony_ci          regulator-ramp-delay = <12500>;
10462306a36Sopenharmony_ci          regulator-enable-ramp-delay = <220>;
10562306a36Sopenharmony_ci          regulator-always-on;
10662306a36Sopenharmony_ci        };
10762306a36Sopenharmony_ci        mt6357_vpa_reg: buck-vpa {
10862306a36Sopenharmony_ci          regulator-name = "vpa";
10962306a36Sopenharmony_ci          regulator-min-microvolt = <500000>;
11062306a36Sopenharmony_ci          regulator-max-microvolt = <3650000>;
11162306a36Sopenharmony_ci          regulator-ramp-delay = <50000>;
11262306a36Sopenharmony_ci          regulator-enable-ramp-delay = <220>;
11362306a36Sopenharmony_ci        };
11462306a36Sopenharmony_ci        mt6357_vfe28_reg: ldo-vfe28 {
11562306a36Sopenharmony_ci          compatible = "regulator-fixed";
11662306a36Sopenharmony_ci          regulator-name = "vfe28";
11762306a36Sopenharmony_ci          regulator-min-microvolt = <2800000>;
11862306a36Sopenharmony_ci          regulator-max-microvolt = <2800000>;
11962306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
12062306a36Sopenharmony_ci        };
12162306a36Sopenharmony_ci        mt6357_vxo22_reg: ldo-vxo22 {
12262306a36Sopenharmony_ci          regulator-name = "vxo22";
12362306a36Sopenharmony_ci          regulator-min-microvolt = <2200000>;
12462306a36Sopenharmony_ci          regulator-max-microvolt = <2400000>;
12562306a36Sopenharmony_ci          regulator-enable-ramp-delay = <110>;
12662306a36Sopenharmony_ci        };
12762306a36Sopenharmony_ci        mt6357_vrf18_reg: ldo-vrf18 {
12862306a36Sopenharmony_ci          compatible = "regulator-fixed";
12962306a36Sopenharmony_ci          regulator-name = "vrf18";
13062306a36Sopenharmony_ci          regulator-min-microvolt = <1800000>;
13162306a36Sopenharmony_ci          regulator-max-microvolt = <1800000>;
13262306a36Sopenharmony_ci          regulator-enable-ramp-delay = <110>;
13362306a36Sopenharmony_ci        };
13462306a36Sopenharmony_ci        mt6357_vrf12_reg: ldo-vrf12 {
13562306a36Sopenharmony_ci          compatible = "regulator-fixed";
13662306a36Sopenharmony_ci          regulator-name = "vrf12";
13762306a36Sopenharmony_ci          regulator-min-microvolt = <1200000>;
13862306a36Sopenharmony_ci          regulator-max-microvolt = <1200000>;
13962306a36Sopenharmony_ci          regulator-enable-ramp-delay = <110>;
14062306a36Sopenharmony_ci        };
14162306a36Sopenharmony_ci        mt6357_vefuse_reg: ldo-vefuse {
14262306a36Sopenharmony_ci          regulator-name = "vefuse";
14362306a36Sopenharmony_ci          regulator-min-microvolt = <1200000>;
14462306a36Sopenharmony_ci          regulator-max-microvolt = <3300000>;
14562306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
14662306a36Sopenharmony_ci        };
14762306a36Sopenharmony_ci        mt6357_vcn33_bt_reg: ldo-vcn33-bt {
14862306a36Sopenharmony_ci          regulator-name = "vcn33-bt";
14962306a36Sopenharmony_ci          regulator-min-microvolt = <3300000>;
15062306a36Sopenharmony_ci          regulator-max-microvolt = <3500000>;
15162306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
15262306a36Sopenharmony_ci        };
15362306a36Sopenharmony_ci        mt6357_vcn33_wifi_reg: ldo-vcn33-wifi {
15462306a36Sopenharmony_ci          regulator-name = "vcn33-wifi";
15562306a36Sopenharmony_ci          regulator-min-microvolt = <3300000>;
15662306a36Sopenharmony_ci          regulator-max-microvolt = <3500000>;
15762306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
15862306a36Sopenharmony_ci        };
15962306a36Sopenharmony_ci        mt6357_vcn28_reg: ldo-vcn28 {
16062306a36Sopenharmony_ci          compatible = "regulator-fixed";
16162306a36Sopenharmony_ci          regulator-name = "vcn28";
16262306a36Sopenharmony_ci          regulator-min-microvolt = <2800000>;
16362306a36Sopenharmony_ci          regulator-max-microvolt = <2800000>;
16462306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
16562306a36Sopenharmony_ci        };
16662306a36Sopenharmony_ci        mt6357_vcn18_reg: ldo-vcn18 {
16762306a36Sopenharmony_ci          compatible = "regulator-fixed";
16862306a36Sopenharmony_ci          regulator-name = "vcn18";
16962306a36Sopenharmony_ci          regulator-min-microvolt = <1800000>;
17062306a36Sopenharmony_ci          regulator-max-microvolt = <1800000>;
17162306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
17262306a36Sopenharmony_ci        };
17362306a36Sopenharmony_ci        mt6357_vcama_reg: ldo-vcama {
17462306a36Sopenharmony_ci          regulator-name = "vcama";
17562306a36Sopenharmony_ci          regulator-min-microvolt = <2500000>;
17662306a36Sopenharmony_ci          regulator-max-microvolt = <2800000>;
17762306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
17862306a36Sopenharmony_ci        };
17962306a36Sopenharmony_ci        mt6357_vcamd_reg: ldo-vcamd {
18062306a36Sopenharmony_ci          regulator-name = "vcamd";
18162306a36Sopenharmony_ci          regulator-min-microvolt = <1000000>;
18262306a36Sopenharmony_ci          regulator-max-microvolt = <1800000>;
18362306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
18462306a36Sopenharmony_ci        };
18562306a36Sopenharmony_ci        mt6357_vcamio_reg: ldo-vcamio18 {
18662306a36Sopenharmony_ci          compatible = "regulator-fixed";
18762306a36Sopenharmony_ci          regulator-name = "vcamio";
18862306a36Sopenharmony_ci          regulator-min-microvolt = <1800000>;
18962306a36Sopenharmony_ci          regulator-max-microvolt = <1800000>;
19062306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
19162306a36Sopenharmony_ci        };
19262306a36Sopenharmony_ci        mt6357_vldo28_reg: ldo-vldo28 {
19362306a36Sopenharmony_ci          regulator-name = "vldo28";
19462306a36Sopenharmony_ci          regulator-min-microvolt = <2800000>;
19562306a36Sopenharmony_ci          regulator-max-microvolt = <3000000>;
19662306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
19762306a36Sopenharmony_ci        };
19862306a36Sopenharmony_ci        mt6357_vsram_others_reg: ldo-vsram-others {
19962306a36Sopenharmony_ci          regulator-name = "vsram-others";
20062306a36Sopenharmony_ci          regulator-min-microvolt = <518750>;
20162306a36Sopenharmony_ci          regulator-max-microvolt = <1312500>;
20262306a36Sopenharmony_ci          regulator-ramp-delay = <6250>;
20362306a36Sopenharmony_ci          regulator-enable-ramp-delay = <110>;
20462306a36Sopenharmony_ci          regulator-always-on;
20562306a36Sopenharmony_ci        };
20662306a36Sopenharmony_ci        mt6357_vsram_proc_reg: ldo-vsram-proc {
20762306a36Sopenharmony_ci          regulator-name = "vsram-proc";
20862306a36Sopenharmony_ci          regulator-min-microvolt = <518750>;
20962306a36Sopenharmony_ci          regulator-max-microvolt = <1312500>;
21062306a36Sopenharmony_ci          regulator-ramp-delay = <6250>;
21162306a36Sopenharmony_ci          regulator-enable-ramp-delay = <110>;
21262306a36Sopenharmony_ci          regulator-always-on;
21362306a36Sopenharmony_ci        };
21462306a36Sopenharmony_ci        mt6357_vaux18_reg: ldo-vaux18 {
21562306a36Sopenharmony_ci          compatible = "regulator-fixed";
21662306a36Sopenharmony_ci          regulator-name = "vaux18";
21762306a36Sopenharmony_ci          regulator-min-microvolt = <1800000>;
21862306a36Sopenharmony_ci          regulator-max-microvolt = <1800000>;
21962306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
22062306a36Sopenharmony_ci        };
22162306a36Sopenharmony_ci        mt6357_vaud28_reg: ldo-vaud28 {
22262306a36Sopenharmony_ci          compatible = "regulator-fixed";
22362306a36Sopenharmony_ci          regulator-name = "vaud28";
22462306a36Sopenharmony_ci          regulator-min-microvolt = <2800000>;
22562306a36Sopenharmony_ci          regulator-max-microvolt = <2800000>;
22662306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
22762306a36Sopenharmony_ci        };
22862306a36Sopenharmony_ci        mt6357_vio28_reg: ldo-vio28 {
22962306a36Sopenharmony_ci          compatible = "regulator-fixed";
23062306a36Sopenharmony_ci          regulator-name = "vio28";
23162306a36Sopenharmony_ci          regulator-min-microvolt = <2800000>;
23262306a36Sopenharmony_ci          regulator-max-microvolt = <2800000>;
23362306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
23462306a36Sopenharmony_ci        };
23562306a36Sopenharmony_ci        mt6357_vio18_reg: ldo-vio18 {
23662306a36Sopenharmony_ci          compatible = "regulator-fixed";
23762306a36Sopenharmony_ci          regulator-name = "vio18";
23862306a36Sopenharmony_ci          regulator-min-microvolt = <1800000>;
23962306a36Sopenharmony_ci          regulator-max-microvolt = <1800000>;
24062306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
24162306a36Sopenharmony_ci          regulator-always-on;
24262306a36Sopenharmony_ci        };
24362306a36Sopenharmony_ci        mt6357_vdram_reg: ldo-vdram {
24462306a36Sopenharmony_ci          regulator-name = "vdram";
24562306a36Sopenharmony_ci          regulator-min-microvolt = <1100000>;
24662306a36Sopenharmony_ci          regulator-max-microvolt = <1200000>;
24762306a36Sopenharmony_ci          regulator-enable-ramp-delay = <3300>;
24862306a36Sopenharmony_ci        };
24962306a36Sopenharmony_ci        mt6357_vmc_reg: ldo-vmc {
25062306a36Sopenharmony_ci          regulator-name = "vmc";
25162306a36Sopenharmony_ci          regulator-min-microvolt = <1800000>;
25262306a36Sopenharmony_ci          regulator-max-microvolt = <3300000>;
25362306a36Sopenharmony_ci          regulator-enable-ramp-delay = <44>;
25462306a36Sopenharmony_ci        };
25562306a36Sopenharmony_ci        mt6357_vmch_reg: ldo-vmch {
25662306a36Sopenharmony_ci          regulator-name = "vmch";
25762306a36Sopenharmony_ci          regulator-min-microvolt = <2900000>;
25862306a36Sopenharmony_ci          regulator-max-microvolt = <3300000>;
25962306a36Sopenharmony_ci          regulator-enable-ramp-delay = <44>;
26062306a36Sopenharmony_ci        };
26162306a36Sopenharmony_ci        mt6357_vemc_reg: ldo-vemc {
26262306a36Sopenharmony_ci          regulator-name = "vemc";
26362306a36Sopenharmony_ci          regulator-min-microvolt = <2900000>;
26462306a36Sopenharmony_ci          regulator-max-microvolt = <3300000>;
26562306a36Sopenharmony_ci          regulator-enable-ramp-delay = <44>;
26662306a36Sopenharmony_ci          regulator-always-on;
26762306a36Sopenharmony_ci        };
26862306a36Sopenharmony_ci        mt6357_vsim1_reg: ldo-vsim1 {
26962306a36Sopenharmony_ci          regulator-name = "vsim1";
27062306a36Sopenharmony_ci          regulator-min-microvolt = <1700000>;
27162306a36Sopenharmony_ci          regulator-max-microvolt = <3100000>;
27262306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
27362306a36Sopenharmony_ci        };
27462306a36Sopenharmony_ci        mt6357_vsim2_reg: ldo-vsim2 {
27562306a36Sopenharmony_ci          regulator-name = "vsim2";
27662306a36Sopenharmony_ci          regulator-min-microvolt = <1700000>;
27762306a36Sopenharmony_ci          regulator-max-microvolt = <3100000>;
27862306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
27962306a36Sopenharmony_ci        };
28062306a36Sopenharmony_ci        mt6357_vibr_reg: ldo-vibr {
28162306a36Sopenharmony_ci          regulator-name = "vibr";
28262306a36Sopenharmony_ci          regulator-min-microvolt = <1200000>;
28362306a36Sopenharmony_ci          regulator-max-microvolt = <3300000>;
28462306a36Sopenharmony_ci          regulator-enable-ramp-delay = <44>;
28562306a36Sopenharmony_ci        };
28662306a36Sopenharmony_ci        mt6357_vusb33_reg: ldo-vusb33 {
28762306a36Sopenharmony_ci          regulator-name = "vusb33";
28862306a36Sopenharmony_ci          regulator-min-microvolt = <3000000>;
28962306a36Sopenharmony_ci          regulator-max-microvolt = <3100000>;
29062306a36Sopenharmony_ci          regulator-enable-ramp-delay = <264>;
29162306a36Sopenharmony_ci        };
29262306a36Sopenharmony_ci      };
29362306a36Sopenharmony_ci    };
29462306a36Sopenharmony_ci...
295