Re: [v3 1/3] dt-bindings: i2c: Add Maxim MAX735x/MAX736x variants

From: Rob Herring
Date: Fri Feb 04 2022 - 21:21:55 EST


On Thu, Jan 20, 2022 at 01:13:11PM +0100, Patrick Rudolph wrote:
> Update the pca954x bindings to add support for the Maxim MAX735x/MAX736x
> chips. The functionality will be provided by the exisintg pca954x driver.
>
> While on it make the interrupts support conditionally as not all of the
> existing chips have interrupts.
>
> For chips that are powered off by default add an optional regulator
> called vdd-supply.
>
> Signed-off-by: Patrick Rudolph <patrick.rudolph@xxxxxxxxxxxxx>
> ---
> .../bindings/i2c/i2c-mux-pca954x.yaml | 43 ++++++++++++++-----
> 1 file changed, 33 insertions(+), 10 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> index 9f1726d0356b..e7650e2a777e 100644
> --- a/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-pca954x.yaml
> @@ -4,21 +4,47 @@
> $id: http://devicetree.org/schemas/i2c/i2c-mux-pca954x.yaml#
> $schema: http://devicetree.org/meta-schemas/core.yaml#
>
> -title: NXP PCA954x I2C bus switch
> +title: NXP PCA954x I2C and compatible bus switches
>
> maintainers:
> - Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
>
> description:
> - The binding supports NXP PCA954x and PCA984x I2C mux/switch devices.
> + The binding supports NXP PCA954x and PCA984x I2C mux/switch devices,
> + and the Maxim MAX735x and MAX736x I2C mux/switch devices.
>
> allOf:
> - $ref: /schemas/i2c/i2c-mux.yaml#
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - maxim,max7367
> + - maxim,max7369
> + - nxp,pca9542
> + - nxp,pca9543
> + - nxp,pca9544
> + - nxp,pca9545
> + then:
> + properties:
> + interrupts: true

Now any number of interrupts are valid and undefined.

> +
> + "#interrupt-cells":
> + const: 2
> +
> + interrupt-controller: true
>
> properties:
> compatible:
> oneOf:
> - enum:
> + - maxim,max7356
> + - maxim,max7357
> + - maxim,max7358
> + - maxim,max7367
> + - maxim,max7368
> + - maxim,max7369
> - nxp,pca9540
> - nxp,pca9542
> - nxp,pca9543
> @@ -38,14 +64,6 @@ properties:
> reg:
> maxItems: 1
>
> - interrupts:
> - maxItems: 1
> -
> - "#interrupt-cells":
> - const: 2
> -
> - interrupt-controller: true
> -
> reset-gpios:
> maxItems: 1
>
> @@ -59,6 +77,9 @@ properties:
> description: if present, overrides i2c-mux-idle-disconnect
> $ref: /schemas/mux/mux-controller.yaml#/properties/idle-state
>
> + vdd-supply:
> + description: A voltage regulator supplying power to the chip.
> +
> required:
> - compatible
> - reg
> @@ -79,6 +100,8 @@ examples:
> #size-cells = <0>;
> reg = <0x74>;
>
> + vdd-supply = <&p3v3>;
> +
> interrupt-parent = <&ipic>;
> interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
> interrupt-controller;
> --
> 2.34.1
>
>