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: Chen-Yu Tsai <wenst@chromium.org>
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://patch.msgid.link/20251027110527.21002-2-angelogioacchino.delregno@collabora.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
AngeloGioacchino Del Regno
2025-10-27 12:05:19 +01:00
committed by Mark Brown
parent 6146a0f1df
commit 40a7c5db90
3 changed files with 227 additions and 0 deletions

View File

@@ -0,0 +1,76 @@
# 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>;
};
};
};
...

View File

@@ -0,0 +1,76 @@
# 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>;
};
};
};
...

View File

@@ -0,0 +1,75 @@
# 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>;
};
};
};
...