1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- 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 is the i2c-mux child node does not exist.
- - #size-cells = <0>;
- This property is required is 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;
- };
- };
- };
|