[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250623120016.108732-2-angelogioacchino.delregno@collabora.com>
Date: Mon, 23 Jun 2025 14:00:11 +0200
From: AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>
To: broonie@...nel.org
Cc: lgirdwood@...il.com,
robh@...nel.org,
krzk+dt@...nel.org,
conor+dt@...nel.org,
matthias.bgg@...il.com,
angelogioacchino.delregno@...labora.com,
linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linux-mediatek@...ts.infradead.org,
kernel@...labora.com
Subject: [PATCH v1 1/6] 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.
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>
---
.../regulator/mediatek,mt6316-regulator.yaml | 81 +++++++++++++++++++
1 file changed, 81 insertions(+)
create mode 100644 Documentation/devicetree/bindings/regulator/mediatek,mt6316-regulator.yaml
diff --git a/Documentation/devicetree/bindings/regulator/mediatek,mt6316-regulator.yaml b/Documentation/devicetree/bindings/regulator/mediatek,mt6316-regulator.yaml
new file mode 100644
index 000000000000..019c3c36997c
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/mediatek,mt6316-regulator.yaml
@@ -0,0 +1,81 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/mediatek,mt6316-regulator.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MediaTek MT6316 SPMI PMIC Regulators
+
+maintainers:
+ - AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>
+
+description: |
+ The MediaTek MT6316 PMIC is fully controlled by SPMI interface; it features
+ four step-down DC/DC (buck) converters and has multiple variants, providing
+ different phase configurations. In particular:
+ MT6316BP/VP: 2+2 Phase (buck 1+2, buck 3+4)
+ MT6316CP/HP/KP: 3+1 Phase (buck 1+2+4, buck 3)
+ MT6316DP/TP: 4+0 Phase (buck 1+2+3+4)
+
+properties:
+ compatible:
+ enum:
+ - mediatek,mt6316b-regulator
+ - mediatek,mt6316c-regulator
+ - mediatek,mt6316d-regulator
+
+ vbuck1234:
+ type: object
+ $ref: regulator.yaml#
+ unevaluatedProperties: false
+
+additionalProperties: false
+
+allOf:
+ - if:
+ properties:
+ compatible:
+ const: mediatek,mt6316b-regulator
+ then:
+ patternProperties:
+ "^vbuck(12|34)$":
+ type: object
+ $ref: regulator.yaml#
+ unevaluatedProperties: false
+
+ - if:
+ properties:
+ compatible:
+ const: mediatek,mt6316c-regulator
+ then:
+ patternProperties:
+ "^vbuck(124|3)$":
+ type: object
+ $ref: regulator.yaml#
+ unevaluatedProperties: false
+
+ - if:
+ properties:
+ compatible:
+ const: mediatek,mt6316d-regulator
+ then:
+ properties:
+ vbuck1234: true
+ else:
+ properties:
+ vbuck1234: false
+
+examples:
+ - |
+ pmic {
+ regulators {
+ compatible = "mediatek,mt6316d-regulator";
+
+ vbuck1234 {
+ regulator-min-microvolt = <400000>;
+ regulator-max-microvolt = <1277500>;
+ regulator-always-on;
+ };
+ };
+ };
+...
--
2.49.0
Powered by blists - more mailing lists