# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/regulator/mediatek,mt6358-regulator.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: MediaTek MT6358 Regulator maintainers: - Zhiyong Tao description: Regulator node of the PMIC. This node should under the PMIC's device node. All voltage regulators provided by the PMIC are described as sub-nodes of this node. properties: compatible: oneOf: - const: mediatek,mt6358-regulator - items: - const: mediatek,mt6366-regulator - const: mediatek,mt6358-regulator vsys-ldo1-supply: description: Supply for LDOs vfe28, vxo22, vcn28, vaux18, vaud28, vsim1, vusb, vbif28 vsys-ldo2-supply: description: Supply for LDOs vldo28 (MT6358 only), vio28, vmc, vmch, vsim2 vsys-ldo3-supply: description: Supply for LDOs vcn33, vcama[12] (MT6358 only), vemc, vibr vsys-vcore-supply: description: Supply for buck regulator vcore vsys-vdram1-supply: description: Supply for buck regulator vdram1 vsys-vgpu-supply: description: Supply for buck regulator vgpu vsys-vmodem-supply: description: Supply for buck regulator vmodem vsys-vpa-supply: description: Supply for buck regulator vpa vsys-vproc11-supply: description: Supply for buck regulator vproc11 vsys-vproc12-supply: description: Supply for buck regulator vproc12 vsys-vs1-supply: description: Supply for buck regulator vs1 vsys-vs2-supply: description: Supply for buck regulator vs2 vs1-ldo1-supply: description: Supply for LDOs vrf18, vefuse, vcn18, vcamio (MT6358 only), vio18, vm18 (MT6366 only) vs2-ldo1-supply: description: Supply for LDOs vdram2, vmddr (MT6366 only) vs2-ldo2-supply: description: Supply for LDOs vrf12, va12 vs2-ldo3-supply: description: Supply for LDOs vsram-core (MT6366 only), vsram-gpu, vsram-others, vsram-proc11, vsram-proc12 vs2-ldo4-supply: description: Supply for LDO vcamd patternProperties: "^(buck_)?v(core|dram1|gpu|modem|pa|proc1[12]|s[12])$": description: Buck regulators type: object $ref: regulator.yaml# properties: regulator-allowed-modes: description: | Buck regulatpr operating modes allowed. Valid values below. Users should use the macros from dt-bindings/regulator/mediatek,mt6397-regulator.h 0 (MT6397_BUCK_MODE_AUTO): Auto PFM/PWM mode 1 (MT6397_BUCK_MODE_FORCE_PWM): Forced PWM mode items: enum: [0, 1] unevaluatedProperties: false "^(ldo_)?v(a|rf)12$": description: LDOs with fixed 1.2V output and 0~100/10mV tuning type: object $ref: regulator.yaml# properties: regulator-allowed-modes: false unevaluatedProperties: false "^(ldo_)?v((aux|cn|io|rf)18|camio)$": description: LDOs with fixed 1.8V output and 0~100/10mV tuning (vcn18 on MT6366 has variable output) type: object $ref: regulator.yaml# properties: regulator-allowed-modes: false unevaluatedProperties: false "^(ldo_)?vxo22$": description: LDOs with fixed 2.2V output and 0~100/10mV tuning type: object $ref: regulator.yaml# properties: regulator-allowed-modes: false unevaluatedProperties: false "^(ldo_)?v(aud|bif|cn|fe|io)28$": description: LDOs with fixed 2.8V output and 0~100/10mV tuning type: object $ref: regulator.yaml# properties: regulator-allowed-modes: false unevaluatedProperties: false "^(ldo_)?vusb$": description: LDOs with fixed 3.0V output and 0~100/10mV tuning type: object $ref: regulator.yaml# properties: regulator-allowed-modes: false unevaluatedProperties: false "^(ldo_)?vsram[_-](core|gpu|others|proc1[12])$": description: LDOs with variable output type: object $ref: regulator.yaml# properties: regulator-allowed-modes: false unevaluatedProperties: false "^(ldo_)?v(cama[12]|camd|cn33|dram2|efuse|emc|ibr|ldo28|m18|mc|mch|mddr|sim[12])$": description: LDOs with variable output and 0~100/10mV tuning type: object $ref: regulator.yaml# properties: regulator-allowed-modes: false unevaluatedProperties: false required: - compatible additionalProperties: false allOf: - if: properties: compatible: const: mediatek,mt6358-regulator then: patternProperties: # Old regulator node name scheme (with prefix and underscores) only # ([^y-] is used to avoid matching -supply "^(? regulator { compatible = "mediatek,mt6358-regulator"; buck_vgpu { regulator-name = "vgpu"; regulator-min-microvolt = <625000>; regulator-max-microvolt = <900000>; regulator-ramp-delay = <6250>; regulator-enable-ramp-delay = <200>; regulator-allowed-modes = ; }; ldo_vsram_gpu { regulator-name = "vsram_gpu"; regulator-min-microvolt = <850000>; regulator-max-microvolt = <1000000>; regulator-ramp-delay = <6250>; regulator-enable-ramp-delay = <240>; }; }; - | #include regulator { compatible = "mediatek,mt6366-regulator", "mediatek,mt6358-regulator"; vdram1 { regulator-name = "pp1125_emi_vdd2"; regulator-min-microvolt = <1125000>; regulator-max-microvolt = <1125000>; regulator-ramp-delay = <12500>; regulator-enable-ramp-delay = <0>; regulator-allowed-modes = ; regulator-always-on; }; vproc11 { regulator-name = "ppvar_dvdd_proc_bc_mt6366"; regulator-min-microvolt = <600000>; regulator-max-microvolt = <1200000>; regulator-ramp-delay = <6250>; regulator-enable-ramp-delay = <200>; regulator-allowed-modes = ; regulator-always-on; }; vmddr { regulator-name = "pm0750_emi_vmddr"; regulator-min-microvolt = <700000>; regulator-max-microvolt = <750000>; regulator-enable-ramp-delay = <325>; regulator-always-on; }; vsram-proc11 { regulator-name = "pp0900_dvdd_sram_bc"; regulator-min-microvolt = <850000>; regulator-max-microvolt = <1120000>; regulator-ramp-delay = <6250>; regulator-enable-ramp-delay = <240>; regulator-always-on; }; }; ...