1# SPDX-License-Identifier: GPL-2.0 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/i2c/i2c-mux-pca954x.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: NXP PCA954x I2C bus switch 8 9maintainers: 10 - Laurent Pinchart <laurent.pinchart@ideasonboard.com> 11 12description: 13 The binding supports NXP PCA954x and PCA984x I2C mux/switch devices. 14 15allOf: 16 - $ref: /schemas/i2c/i2c-mux.yaml# 17 18properties: 19 compatible: 20 oneOf: 21 - enum: 22 - nxp,pca9540 23 - nxp,pca9542 24 - nxp,pca9543 25 - nxp,pca9544 26 - nxp,pca9545 27 - nxp,pca9546 28 - nxp,pca9547 29 - nxp,pca9548 30 - nxp,pca9846 31 - nxp,pca9847 32 - nxp,pca9848 33 - nxp,pca9849 34 - items: 35 - const: nxp,pca9646 36 - const: nxp,pca9546 37 38 reg: 39 maxItems: 1 40 41 interrupts: 42 maxItems: 1 43 44 "#interrupt-cells": 45 const: 2 46 47 interrupt-controller: true 48 49 reset-gpios: 50 maxItems: 1 51 52 i2c-mux-idle-disconnect: 53 type: boolean 54 description: Forces mux to disconnect all children in idle state. This is 55 necessary for example, if there are several multiplexers on the bus and 56 the devices behind them use same I2C addresses. 57 58 idle-state: 59 description: if present, overrides i2c-mux-idle-disconnect 60 $ref: /schemas/mux/mux-controller.yaml#/properties/idle-state 61 62required: 63 - compatible 64 - reg 65 66unevaluatedProperties: false 67 68examples: 69 - | 70 #include <dt-bindings/interrupt-controller/irq.h> 71 72 i2c { 73 #address-cells = <1>; 74 #size-cells = <0>; 75 76 i2c-mux@74 { 77 compatible = "nxp,pca9548"; 78 #address-cells = <1>; 79 #size-cells = <0>; 80 reg = <0x74>; 81 82 interrupt-parent = <&ipic>; 83 interrupts = <17 IRQ_TYPE_LEVEL_LOW>; 84 interrupt-controller; 85 #interrupt-cells = <2>; 86 87 i2c@2 { 88 #address-cells = <1>; 89 #size-cells = <0>; 90 reg = <2>; 91 92 eeprom@54 { 93 compatible = "atmel,24c08"; 94 reg = <0x54>; 95 }; 96 }; 97 98 i2c@4 { 99 #address-cells = <1>; 100 #size-cells = <0>; 101 reg = <4>; 102 103 rtc@51 { 104 compatible = "nxp,pcf8563"; 105 reg = <0x51>; 106 }; 107 }; 108 }; 109 }; 110... 111