Commit | Line | Data |
---|---|---|
bc45449b DD |
1 | Common i2c bus multiplexer/switch properties. |
2 | ||
3 | An i2c bus multiplexer/switch will have several child busses that are | |
4 | numbered uniquely in a device dependent manner. The nodes for an i2c bus | |
374f8436 | 5 | multiplexer/switch will have one child node for each child bus. |
bc45449b | 6 | |
374f8436 PR |
7 | Optional properties: |
8 | - #address-cells = <1>; | |
9 | This property is required is the i2c-mux child node does not exist. | |
10 | ||
11 | - #size-cells = <0>; | |
12 | This property is required is the i2c-mux child node does not exist. | |
13 | ||
14 | - i2c-mux | |
15 | For i2c multiplexers/switches that have child nodes that are a mixture | |
16 | of both i2c child busses and other child nodes, the 'i2c-mux' subnode | |
17 | can be used for populating the i2c child busses. If an 'i2c-mux' | |
18 | subnode is present, only subnodes of this will be considered as i2c | |
19 | child busses. | |
20 | ||
21 | Required properties for the i2c-mux child node: | |
bc45449b DD |
22 | - #address-cells = <1>; |
23 | - #size-cells = <0>; | |
24 | ||
374f8436 | 25 | Required properties for i2c child bus nodes: |
bc45449b DD |
26 | - #address-cells = <1>; |
27 | - #size-cells = <0>; | |
28 | - reg : The sub-bus number. | |
29 | ||
374f8436 | 30 | Optional properties for i2c child bus nodes: |
bc45449b DD |
31 | - Other properties specific to the multiplexer/switch hardware. |
32 | - Child nodes conforming to i2c bus binding | |
33 | ||
34 | ||
35 | Example : | |
36 | ||
37 | /* | |
38 | An NXP pca9548 8 channel I2C multiplexer at address 0x70 | |
39 | with two NXP pca8574 GPIO expanders attached, one each to | |
40 | ports 3 and 4. | |
41 | */ | |
42 | ||
43 | mux@70 { | |
44 | compatible = "nxp,pca9548"; | |
45 | reg = <0x70>; | |
46 | #address-cells = <1>; | |
47 | #size-cells = <0>; | |
48 | ||
49 | i2c@3 { | |
50 | #address-cells = <1>; | |
51 | #size-cells = <0>; | |
52 | reg = <3>; | |
53 | ||
54 | gpio1: gpio@38 { | |
55 | compatible = "nxp,pca8574"; | |
56 | reg = <0x38>; | |
57 | #gpio-cells = <2>; | |
58 | gpio-controller; | |
59 | }; | |
60 | }; | |
61 | i2c@4 { | |
62 | #address-cells = <1>; | |
63 | #size-cells = <0>; | |
64 | reg = <4>; | |
65 | ||
66 | gpio2: gpio@38 { | |
67 | compatible = "nxp,pca8574"; | |
68 | reg = <0x38>; | |
69 | #gpio-cells = <2>; | |
70 | gpio-controller; | |
71 | }; | |
72 | }; | |
73 | }; |