Add the Maxim MAX735x/MAX736x as supported chip and give an example how to use it. The functionality will be provided by the exisintg pca954x driver. Signed-off-by: Patrick Rudolph <patrick.rudolph@xxxxxxxxxxxxx> --- .../bindings/i2c/i2c-mux-max735x.yaml | 101 ++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 Documentation/devicetree/bindings/i2c/i2c-mux-max735x.yaml diff --git a/Documentation/devicetree/bindings/i2c/i2c-mux-max735x.yaml b/Documentation/devicetree/bindings/i2c/i2c-mux-max735x.yaml new file mode 100644 index 000000000000..dc924ec934ca --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/i2c-mux-max735x.yaml @@ -0,0 +1,101 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/i2c/i2c-mux-max735x.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Maxim MAX735x/MAX736x I2C bus switch + +maintainers: + - Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> + +description: + The binding supports Maxim MAX735x and MAX736x I2C mux/switch devices. + +allOf: + - $ref: /schemas/i2c/i2c-mux.yaml# + - if: + properties: + compatible: + contains: + enum: + - maxim,max7367 + - maxim,max7369 + then: + properties: + interrupts: true + + "#interrupt-cells": + const: 2 + + interrupt-controller: true + +properties: + compatible: + oneOf: + - enum: + - maxim,max7356 + - maxim,max7357 + - maxim,max7358 + - maxim,max7367 + - maxim,max7368 + - maxim,max7369 + + reg: + maxItems: 1 + + reset-gpios: + maxItems: 1 + + i2c-mux-idle-disconnect: + type: boolean + description: 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. + + idle-state: + description: if present, overrides i2c-mux-idle-disconnect + $ref: /schemas/mux/mux-controller.yaml#/properties/idle-state + +required: + - compatible + - reg + +unevaluatedProperties: false + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + + i2c-mux@74 { + compatible = "maxim,max7357"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x74>; + + i2c@1 { + #address-cells = <1>; + #size-cells = <0>; + reg = <1>; + + eeprom@54 { + compatible = "atmel,24c08"; + reg = <0x54>; + }; + }; + + i2c@7 { + #address-cells = <1>; + #size-cells = <0>; + reg = <7>; + + rtc@51 { + compatible = "nxp,pcf8563"; + reg = <0x51>; + }; + }; + }; + }; +... -- 2.33.1