Re: [PATCH 5/6] dt-bindings: i2c: i2c-mux-pca954x: Convert to DT schema

From: Rob Herring
Date: Tue May 18 2021 - 22:05:52 EST


On Tue, May 18, 2021 at 8:23 PM Laurent Pinchart
<laurent.pinchart@xxxxxxxxxxxxxxxx> wrote:
>
> Hi Rob,
>
> Thank you for the patch.
>
> On Tue, May 18, 2021 at 06:28:57PM -0500, Rob Herring wrote:
> > Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> > Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
> > ---
> > .../bindings/i2c/i2c-mux-pca954x.txt | 74 ------------
> > .../bindings/i2c/i2c-mux-pca954x.yaml | 106 ++++++++++++++++++
> > 2 files changed, 106 insertions(+), 74 deletions(-)
> > delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.txt
> > create mode 100644 Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.txt b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.txt
> > deleted file mode 100644
> > index 9f3f3eb67e87..000000000000
> > --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.txt
> > +++ /dev/null
> > @@ -1,74 +0,0 @@
> > -* NXP PCA954x I2C bus switch
> > -
> > -The driver supports NXP PCA954x and PCA984x I2C mux/switch devices.
> > -
> > -Required Properties:
> > -
> > - - compatible: Must contain one of the following.
> > - "nxp,pca9540",
> > - "nxp,pca9542",
> > - "nxp,pca9543",
> > - "nxp,pca9544",
> > - "nxp,pca9545",
> > - "nxp,pca9546", "nxp,pca9846",
> > - "nxp,pca9547", "nxp,pca9847",
> > - "nxp,pca9548", "nxp,pca9848",
> > - "nxp,pca9849"
> > -
> > - - reg: The I2C address of the device.
> > -
> > - The following required properties are defined externally:
> > -
> > - - Standard I2C mux properties. See i2c-mux.txt in this directory.
> > - - I2C child bus nodes. See i2c-mux.txt in this directory.
> > -
> > -Optional Properties:
> > -
> > - - reset-gpios: Reference to the GPIO connected to the reset input.
> > - - idle-state: if present, overrides i2c-mux-idle-disconnect,
> > - Please refer to Documentation/devicetree/bindings/mux/mux-controller.yaml
> > - - i2c-mux-idle-disconnect: Boolean; if defined, forces mux to disconnect all
> > - children in idle state. This is necessary for example, if there are several
> > - multiplexers on the bus and the devices behind them use same I2C addresses.
> > - - interrupts: Interrupt mapping for IRQ.
> > - - interrupt-controller: Marks the device node as an interrupt controller.
> > - - #interrupt-cells : Should be two.
> > - - first cell is the pin number
> > - - second cell is used to specify flags.
> > - See also Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
> > -
> > -Example:
> > -
> > - i2c-switch@74 {
> > - compatible = "nxp,pca9548";
> > - #address-cells = <1>;
> > - #size-cells = <0>;
> > - reg = <0x74>;
> > -
> > - interrupt-parent = <&ipic>;
> > - interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
> > - interrupt-controller;
> > - #interrupt-cells = <2>;
> > -
> > - i2c@2 {
> > - #address-cells = <1>;
> > - #size-cells = <0>;
> > - reg = <2>;
> > -
> > - eeprom@54 {
> > - compatible = "atmel,24c08";
> > - reg = <0x54>;
> > - };
> > - };
> > -
> > - i2c@4 {
> > - #address-cells = <1>;
> > - #size-cells = <0>;
> > - reg = <4>;
> > -
> > - rtc@51 {
> > - compatible = "nxp,pcf8563";
> > - reg = <0x51>;
> > - };
> > - };
> > - };
> > diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> > new file mode 100644
> > index 000000000000..82d9101098c7
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> > @@ -0,0 +1,106 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/i2c/i2c-mux-pca954x.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: NXP PCA954x I2C bus switch
> > +
> > +maintainers:
> > + - Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> > +
> > +description:
> > + The binding supports NXP PCA954x and PCA984x I2C mux/switch devices.
> > +
> > +allOf:
> > + - $ref: /schemas/i2c/i2c-mux.yaml#
> > +
> > +properties:
> > + compatible:
> > + enum:
> > + - nxp,pca9540
> > + - nxp,pca9542
> > + - nxp,pca9543
> > + - nxp,pca9544
> > + - nxp,pca9545
> > + - nxp,pca9546
> > + - nxp,pca9547
> > + - nxp,pca9548
> > + - nxp,pca9849
>
> I'd put this entry last to keep them alphabetically sorted.

Sigh, that was my intent...

> While at it, could you add nxp,pca9646 as the driver supports it ?

Sure.

> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>

Thanks!