xref: /freebsd/sys/contrib/device-tree/Bindings/i2c/i2c-cros-ec-tunnel.txt (revision 59c8e88e72633afbc47a4ace0d2170d00d51f7dc)
1I2C bus that tunnels through the ChromeOS EC (cros-ec)
2======================================================
3On some ChromeOS board designs we've got a connection to the EC (embedded
4controller) but no direct connection to some devices on the other side of
5the EC (like a battery and PMIC).  To get access to those devices we need
6to tunnel our i2c commands through the EC.
7
8The node for this device should be under a cros-ec node like google,cros-ec-spi
9or google,cros-ec-i2c.
10
11
12Required properties:
13- compatible: google,cros-ec-i2c-tunnel
14- google,remote-bus: The EC bus we'd like to talk to.
15
16Optional child nodes:
17- One node per I2C device connected to the tunnelled I2C bus.
18
19
20Example:
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	}
40