GNU Linux-libre 4.19.264-gnu1
[releases.git] / Documentation / devicetree / bindings / i2c / i2c-gate.txt
1 An i2c gate is useful to e.g. reduce the digital noise for RF tuners connected
2 to the i2c bus. Gates are similar to arbitrators in that you need to perform
3 some kind of operation to access the i2c bus past the arbitrator/gate, but
4 there are no competing masters to consider for gates and therefore there is
5 no arbitration happening for gates.
6
7 Common i2c gate properties.
8
9 - i2c-gate child node
10
11 Required properties for the i2c-gate child node:
12 - #address-cells = <1>;
13 - #size-cells = <0>;
14
15 Optional properties for i2c-gate child node:
16 - Child nodes conforming to i2c bus binding
17
18
19 Example :
20
21         /*
22            An Invensense mpu9150 at address 0x68 featuring an on-chip Asahi
23            Kasei ak8975 compass behind a gate.
24          */
25
26         mpu9150@68 {
27                 compatible = "invensense,mpu9150";
28                 reg = <0x68>;
29                 interrupt-parent = <&gpio1>;
30                 interrupts = <18 1>;
31
32                 i2c-gate {
33                         #address-cells = <1>;
34                         #size-cells = <0>;
35
36                         ax8975@c {
37                                 compatible = "ak,ak8975";
38                                 reg = <0x0c>;
39                         };
40                 };
41         };