Commit | Line | Data |
---|---|---|
9d230c9e DA |
1 | I2C bus that tunnels through the ChromeOS EC (cros-ec) |
2 | ====================================================== | |
3 | On some ChromeOS board designs we've got a connection to the EC (embedded | |
4 | controller) but no direct connection to some devices on the other side of | |
5 | the EC (like a battery and PMIC). To get access to those devices we need | |
6 | to tunnel our i2c commands through the EC. | |
7 | ||
8 | The node for this device should be under a cros-ec node like google,cros-ec-spi | |
9 | or google,cros-ec-i2c. | |
10 | ||
11 | ||
12 | Required properties: | |
13 | - compatible: google,cros-ec-i2c-tunnel | |
14 | - google,remote-bus: The EC bus we'd like to talk to. | |
15 | ||
16 | Optional child nodes: | |
17 | - One node per I2C device connected to the tunnelled I2C bus. | |
18 | ||
19 | ||
20 | Example: | |
21 | cros-ec@0 { | |
22 | compatible = "google,cros-ec-spi"; | |
23 | ||
24 | ... | |
25 | ||
26 | i2c-tunnel { | |
27 | compatible = "google,cros-ec-i2c-tunnel"; | |
28 | #address-cells = <1>; | |
29 | #size-cells = <0>; | |
30 | ||
31 | google,remote-bus = <0>; | |
32 | ||
33 | battery: sbs-battery@b { | |
34 | compatible = "sbs,sbs-battery"; | |
35 | reg = <0xb>; | |
36 | sbs,poll-retry-count = <1>; | |
37 | }; | |
38 | }; | |
39 | } |