hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
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.
 
Required properties:
- #address-cells = <1>;
- #size-cells = <0>;
 
Required properties for child nodes:
- #address-cells = <1>;
- #size-cells = <0>;
- reg : The sub-bus number.
 
Optional properties for child 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;
           };
       };
   };