Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/sys/contrib/device-tree/Bindings/i2c/i2c-gate.txt
48375 views
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
};
42
43