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 > >