| Common i2c bus multiplexer/switch properties. |
| |
| An i2c bus multiplexer/switch will have several child busses that are |
| numbered uniquely in a device dependent manner. The nodes for an i2c bus |
| multiplexer/switch will have one child node for each child bus. |
| |
| Optional properties: |
| - #address-cells = <1>; |
| This property is required if the i2c-mux child node does not exist. |
| |
| - #size-cells = <0>; |
| This property is required if the i2c-mux child node does not exist. |
| |
| - i2c-mux |
| For i2c multiplexers/switches that have child nodes that are a mixture |
| of both i2c child busses and other child nodes, the 'i2c-mux' subnode |
| can be used for populating the i2c child busses. If an 'i2c-mux' |
| subnode is present, only subnodes of this will be considered as i2c |
| child busses. |
| |
| Required properties for the i2c-mux child node: |
| - #address-cells = <1>; |
| - #size-cells = <0>; |
| |
| Required properties for i2c child bus nodes: |
| - #address-cells = <1>; |
| - #size-cells = <0>; |
| - reg : The sub-bus number. |
| |
| Optional properties for i2c child bus nodes: |
| - Other properties specific to the multiplexer/switch hardware. |
| - Child nodes conforming to i2c bus binding |
| |
| |
| Example : |
| |
| /* |
| An NXP pca9548 8 channel I2C multiplexer at address 0x70 |
| with two NXP pca8574 GPIO expanders attached, one each to |
| ports 3 and 4. |
| */ |
| |
| mux@70 { |
| compatible = "nxp,pca9548"; |
| reg = <0x70>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| i2c@3 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <3>; |
| |
| gpio1: gpio@38 { |
| compatible = "nxp,pca8574"; |
| reg = <0x38>; |
| #gpio-cells = <2>; |
| gpio-controller; |
| }; |
| }; |
| i2c@4 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| reg = <4>; |
| |
| gpio2: gpio@38 { |
| compatible = "nxp,pca8574"; |
| reg = <0x38>; |
| #gpio-cells = <2>; |
| gpio-controller; |
| }; |
| }; |
| }; |