Unverified Commit 40a7c5db authored by AngeloGioacchino Del Regno's avatar AngeloGioacchino Del Regno Committed by Mark Brown
Browse files

dt-bindings: regulator: Document MediaTek MT6316 PMIC Regulators



Add bindings for the regulators found in the MediaTek MT6316 PMIC,
usually found in board designs using the MT6991 Dimensity 9400 and
on MT8196 Kompanio SoC for Chromebooks.

This chip is fully controlled by SPMI and has multiple variants
providing different phase configurations.

Reviewed-by: default avatarChen-Yu Tsai <wenst@chromium.org>
Signed-off-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: default avatarConor Dooley <conor.dooley@microchip.com>
Link: https://patch.msgid.link/20251027110527.21002-2-angelogioacchino.delregno@collabora.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 6146a0f1
Loading
Loading
Loading
Loading
+76 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/mediatek,mt6316b-regulator.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MediaTek MT6316 BP/VP SPMI PMIC Regulators

maintainers:
  - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

description:
  The MediaTek MT6316BP/VP PMICs are fully controlled by SPMI interface, both
  feature four step-down DC/DC (buck) converters, and provides 2+2 Phases,
  joining Buck 1+2 for the first phase, and Buck 3+4 for the second phase.

properties:
  compatible:
    const: mediatek,mt6316b-regulator

  reg:
    maxItems: 1

patternProperties:
  "^vbuck(12|34)$":
    type: object
    $ref: regulator.yaml#
    unevaluatedProperties: false
    properties:
      regulator-allowed-modes:
        description: |
          Allowed Buck regulator operating modes allowed. Valid values below.
            0 - Normal mode with automatic power saving, reducing the switching
                frequency when light load conditions are detected
            1 - Forced Continuous Conduction mode (FCCM) for improved voltage
                regulation accuracy with constant switching frequency but lower
                regulator efficiency
            2 - Forced Low Power mode for improved regulator efficiency, used
                when no heavy load is expected, will shut down unnecessary IP
                blocks and secondary phases to reduce quiescent current.
                This mode does not limit the maximum output current but unless
                only a light load is applied, there will be regulation accuracy
                and efficiency losses.
        minItems: 1
        maxItems: 3
        items:
          enum: [ 0, 1, 2 ]

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    #include <dt-bindings/spmi/spmi.h>

    spmi {
      #address-cells = <2>;
      #size-cells = <0>;

      pmic@8 {
        compatible = "mediatek,mt6316b-regulator";
        reg = <0x8 SPMI_USID>;

        vbuck12 {
          regulator-name = "dvdd_core";
          regulator-min-microvolt = <450000>;
          regulator-max-microvolt = <965000>;
          regulator-allowed-modes = <0 1 2>;
          regulator-enable-ramp-delay = <256>;
        };
      };
    };
...
+76 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/mediatek,mt6316c-regulator.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MediaTek MT6316 CP/HP/KP SPMI PMIC Regulators

maintainers:
  - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

description:
  The MediaTek MT6316CP/HP/KP PMICs are fully controlled by SPMI interface,
  features four step-down DC/DC (buck) converters, and provides 3+1 Phases,
  joining Buck 1+2+4 for the first phase, and uses Buck 3 for the second.

properties:
  compatible:
    const: mediatek,mt6316c-regulator

  reg:
    maxItems: 1

patternProperties:
  "^vbuck(124|3)$":
    type: object
    $ref: regulator.yaml#
    unevaluatedProperties: false
    properties:
      regulator-allowed-modes:
        description: |
          Allowed Buck regulator operating modes allowed. Valid values below.
            0 - Normal mode with automatic power saving, reducing the switching
                frequency when light load conditions are detected
            1 - Forced Continuous Conduction mode (FCCM) for improved voltage
                regulation accuracy with constant switching frequency but lower
                regulator efficiency
            2 - Forced Low Power mode for improved regulator efficiency, used
                when no heavy load is expected, will shut down unnecessary IP
                blocks and secondary phases to reduce quiescent current.
                This mode does not limit the maximum output current but unless
                only a light load is applied, there will be regulation accuracy
                and efficiency losses.
        minItems: 1
        maxItems: 3
        items:
          enum: [ 0, 1, 2 ]

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    #include <dt-bindings/spmi/spmi.h>

    spmi {
      #address-cells = <2>;
      #size-cells = <0>;

      pmic@6 {
        compatible = "mediatek,mt6316c-regulator";
        reg = <0x6 SPMI_USID>;

        vbuck124 {
          regulator-name = "dvdd_proc_m";
          regulator-min-microvolt = <450000>;
          regulator-max-microvolt = <1277500>;
          regulator-allowed-modes = <0 1 2>;
          regulator-enable-ramp-delay = <256>;
        };
      };
    };
...
+75 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/mediatek,mt6316d-regulator.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MediaTek MT6316 DP/TP SPMI PMIC Regulators

maintainers:
  - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>

description:
  The MediaTek MT6316DP/TP PMICs are fully controlled by SPMI interface, both
  feature four step-down DC/DC (buck) converters, and provides a single Phase,
  joining Buck 1+2+3+4.

properties:
  compatible:
    const: mediatek,mt6316d-regulator

  reg:
    maxItems: 1

  vbuck1234:
    type: object
    $ref: regulator.yaml#
    unevaluatedProperties: false
    properties:
      regulator-allowed-modes:
        description: |
          Allowed Buck regulator operating modes allowed. Valid values below.
            0 - Normal mode with automatic power saving, reducing the switching
                frequency when light load conditions are detected
            1 - Forced Continuous Conduction mode (FCCM) for improved voltage
                regulation accuracy with constant switching frequency but lower
                regulator efficiency
            2 - Forced Low Power mode for improved regulator efficiency, used
                when no heavy load is expected, will shut down unnecessary IP
                blocks and secondary phases to reduce quiescent current.
                This mode does not limit the maximum output current but unless
                only a light load is applied, there will be regulation accuracy
                and efficiency losses.
        minItems: 1
        maxItems: 3
        items:
          enum: [ 0, 1, 2 ]

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    #include <dt-bindings/spmi/spmi.h>

    spmi {
      #address-cells = <2>;
      #size-cells = <0>;

      pmic@7 {
        compatible = "mediatek,mt6316d-regulator";
        reg = <0x7 SPMI_USID>;

        vbuck1234 {
          regulator-name = "dvdd_gpustack";
          regulator-min-microvolt = <400000>;
          regulator-max-microvolt = <1277500>;
          regulator-allowed-modes = <0 1 2>;
          regulator-enable-ramp-delay = <256>;
        };
      };
    };
...