summaryrefslogtreecommitdiffstats
path: root/kernel/Documentation/devicetree/bindings/i2c/i2c-cros-ec-tunnel.txt
blob: 898f030eba6229ec45da1073a410f32b16ba4011 (plain)
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
I2C bus that tunnels through the ChromeOS EC (cros-ec)
======================================================
On some ChromeOS board designs we've got a connection to the EC (embedded
controller) but no direct connection to some devices on the other side of
the EC (like a battery and PMIC).  To get access to those devices we need
to tunnel our i2c commands through the EC.

The node for this device should be under a cros-ec node like google,cros-ec-spi
or google,cros-ec-i2c.


Required properties:
- compatible: google,cros-ec-i2c-tunnel
- google,remote-bus: The EC bus we'd like to talk to.

Optional child nodes:
- One node per I2C device connected to the tunnelled I2C bus.


Example:
	cros-ec@0 {
		compatible = "google,cros-ec-spi";

		...

		i2c-tunnel {
			compatible = "google,cros-ec-i2c-tunnel";
			#address-cells = <1>;
			#size-cells = <0>;

			google,remote-bus = <0>;

			battery: sbs-battery@b {
				compatible = "sbs,sbs-battery";
				reg = <0xb>;
				sbs,poll-retry-count = <1>;
			};
		};
	}