Re: [PATCH 1/6] dt-bindings: mfd: add bindings for QIXIS CPLD

From: Krzysztof Kozlowski
Date: Fri May 02 2025 - 03:02:09 EST


On Wed, Apr 30, 2025 at 06:36:29PM GMT, Ioana Ciornei wrote:
> This adds device tree bindings for the board management controller -
> QIXIS CPLD - found on some Layerscape based boards such as LX2160A-RDB,
> LX2160AQDS, LS1028AQDS etc.
>
> Signed-off-by: Ioana Ciornei <ioana.ciornei@xxxxxxx>
> ---
> .../bindings/mfd/fsl,qixis-i2c.yaml | 65 +++++++++++++++++++
> 1 file changed, 65 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/mfd/fsl,qixis-i2c.yaml
>
> diff --git a/Documentation/devicetree/bindings/mfd/fsl,qixis-i2c.yaml b/Documentation/devicetree/bindings/mfd/fsl,qixis-i2c.yaml
> new file mode 100644
> index 000000000000..562878050916
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mfd/fsl,qixis-i2c.yaml

Filename matching compatible.

> @@ -0,0 +1,65 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/mfd/fsl,qixis-i2c.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: NXP's QIXIS CPLD board management controller
> +
> +maintainers:
> + - Ioana Ciornei <ioana.ciornei@xxxxxxx>
> +
> +description: |
> + The board management controller found on some Layerscape boards contains
> + different IP blocks like GPIO controllers, interrupt controllers, reg-muxes
> + etc.
> +
> +properties:
> + compatible:
> + enum:
> + - fsl,lx2160a-qds-qixis-i2c
> + - fsl,lx2162a-qds-qixis-i2c
> + - fsl,ls1028a-qds-qixis-i2c

Keep alphabetical order.

What is actual device name? I2C? Is this an I2C controller or device?

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

This says device, so i2c in compatible is wrong.

Anyway drop description, redundant.


> + maxItems: 1
> +
> + "#address-cells":
> + const: 1

Why?

> +
> + "#size-cells":
> + const: 0

Why? Drop cells.

> +
> + mux-controller:
> + $ref: /schemas/mux/reg-mux.yaml#
> +
> +required:
> + - "#address-cells"
> + - "#size-cells"
> + - compatible
> + - reg

Keep same order as in properties

> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + qixis@66 {

Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation

> + compatible = "fsl,lx2160a-qds-qixis-i2c";
> + reg = <0x66>;
> + #address-cells = <1>;
> + #size-cells = <0>;

So were do you use address/size cells?

Best regards,
Krzysztof