Re: [RFC PATCH 1/5] dt-bindings: mfd: add entry for the Marvell 88PM88X PMICs

From: Rob Herring
Date: Mon Dec 18 2023 - 10:18:09 EST


On Sun, Dec 17, 2023 at 02:16:59PM +0100, Karel Balej wrote:
> From: Karel Balej <balejk@xxxxxxxxx>
>
> Marvell 88PM880 and 88PM886 are two similar PMICs with mostly matching
> register mapping and subdevices such as onkey, regulators or battery and
> charger. Both seem to come in two revisions which seem to be handled
> slightly differently in some subdevice drivers.
>
> Signed-off-by: Karel Balej <balejk@xxxxxxxxx>
> ---
> .../bindings/mfd/marvell,88pm88x.yaml | 55 +++++++++++++++++++
> 1 file changed, 55 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/mfd/marvell,88pm88x.yaml
>
> diff --git a/Documentation/devicetree/bindings/mfd/marvell,88pm88x.yaml b/Documentation/devicetree/bindings/mfd/marvell,88pm88x.yaml
> new file mode 100644
> index 000000000000..e075729c360f
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/marvell,88pm88x.yaml
> @@ -0,0 +1,55 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/marvell,88pm88x.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Marvell 88PM88X PMIC core MFD

Drop 'MFD'.

> +
> +maintainers:
> + - Karel Balej <balejk@xxxxxxxxx>
> +
> +description: |

Don't need '|' as there is no formatting to preserve.

> + Marvell 88PM880 and 88PM886 are two similar PMICs providing
> + several functions such as onkey, regulators or battery and
> + charger. Both seem to come in two revisions -- A0 and A1.
> +
> +properties:
> + compatible:
> + const: marvell,88pm886-a1

The description talks about 4 different devices, but only 1 here.

Do you expect to need A0 support? Devices with these PMICs should be
known and few, right?

> +
> + reg:
> + description: I2C device address

Drop.

> + maxItems: 1
> +
> + interrupt-controller: true
> +
> + interrupts:
> + maxItems: 1
> +
> + "#interrupt-cells":
> + const: 2
> +
> +required:
> + - compatible
> + - reg
> + - interrupt-controller
> + - interrupts
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + pmic0: 88pm886@30 {

pmic@30

Drop the unused label.

> + compatible = "marvell,88pm886-a1";
> + reg = <0x30>;
> + interrupts = <0 4 IRQ_TYPE_LEVEL_HIGH>;

You need the header for this.

You'll find the input binding fails too. Please test your bindings
before sending.

> + interrupt-parent = <&gic>;
> + interrupt-controller;
> + #interrupt-cells = <1>;
> + };
> + };
> +...
> --
> 2.43.0
>