Re: [PATCH v1 1/2] dt-bindings: mfd: Add binding for MediaTek MT6363 series SPMI PMIC
From: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Date: 2025-06-25 08:30:47
Also in:
linux-devicetree, linux-mediatek, lkml
Il 25/06/25 02:51, Rob Herring ha scritto:
On Mon, Jun 23, 2025 at 02:00:37PM +0200, AngeloGioacchino Del Regno wrote:quoted
Add a binding for the MediaTek MT6363/6373 (and similar) multi function PMICs connected over SPMI. These PMICs are found on board designs using newer MediaTek SoCs, such as the Dimensity 9400 Smartphone chip, or the Chromebook MT8196 chip. Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> --- .../bindings/mfd/mediatek,mt6363.yaml | 98 +++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/mediatek,mt6363.yamldiff --git a/Documentation/devicetree/bindings/mfd/mediatek,mt6363.yaml b/Documentation/devicetree/bindings/mfd/mediatek,mt6363.yaml new file mode 100644 index 000000000000..2ce57e659d12 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/mediatek,mt6363.yaml@@ -0,0 +1,98 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/mediatek,mt6363.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: MediaTek MT6363 series SPMI PMICs multi-function device + +maintainers: + - AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> + +description: | + Some MediaTek Power Management ICs (PMICs) found in board designs with + the Helio, Dimensity and/or Kompanio series of SoCs are interfaced to + the chip via the System Power Management Interface (SPMI) bus. + + These PMICs are multi-function devices with various sub modules. + For example, those may include one, or more of the following: + - Auxiliary ADC Controller + - Clock Controller + - eFuses + - GPIO Controller + - Interrupt Controller + - Keys + - LEDs Controller + - Regulators + - RTC + +properties: + compatible: + items: + - enum: + - mediatek,mt6363 + - mediatek,mt6373 + + reg: + maxItems: 1 + + '#address-cells': + const: 0 + + '#size-cells': + const: 0 + + interrupts: + maxItems: 1 + + interrupt-controller: true + + "#interrupt-cells": + const: 3 + + adc: + type: object + $ref: /schemas/iio/adc/mediatek,mt6359-auxadc.yaml# + unevaluatedProperties: false + + regulators: + type: object + oneOf: + - $ref: /schemas/regulator/mediatek,mt6363-regulator.yaml# + - $ref: /schemas/regulator/mediatek,mt6373-regulator.yaml#This causes the schemas to be applied 4 times (2 each). Better if you do: properties: compatible: contains: enum: [ the compatibles in those schemas ]
Noted, thanks!
quoted
+ additionalProperties: true + + keys: + type: object + $ref: /schemas/input/mediatek,pmic-keys.yaml + unevaluatedProperties: false + +required: + - compatible + - reg + - '#address-cells' + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/spmi/spmi.h> + + spmi { + #address-cells = <2>; + #size-cells = <0>; + + pmic@4 { + compatible = "mediatek,mt6363"; + reg = <0x4 SPMI_USID>; + interrupts = <4 64 IRQ_TYPE_LEVEL_HIGH>; + interrupt-controller; + #address-cells = <0>; + #interrupt-cells = <3>; + + regulators { + compatible = "mediatek,mt6363-regulator"; + };Make the example complete. with adc and keys nodes.
You mean just adding a
adc {
compatible = xyz;
};
keys {
compatible = xyz;
};
right?
I will add the full example in the next version :-)
Thank you!
Angelo
quoted
+ }; + }; -- 2.49.0