18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/i2c/google,cros-ec-i2c-tunnel.yaml# 68c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_cititle: I2C bus that tunnels through the ChromeOS EC (cros-ec) 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_cimaintainers: 118c2ecf20Sopenharmony_ci - Doug Anderson <dianders@chromium.org> 128c2ecf20Sopenharmony_ci - Benson Leung <bleung@chromium.org> 138c2ecf20Sopenharmony_ci - Enric Balletbo i Serra <enric.balletbo@collabora.com> 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_cidescription: | 168c2ecf20Sopenharmony_ci On some ChromeOS board designs we've got a connection to the EC 178c2ecf20Sopenharmony_ci (embedded controller) but no direct connection to some devices on the 188c2ecf20Sopenharmony_ci other side of the EC (like a battery and PMIC). To get access to 198c2ecf20Sopenharmony_ci those devices we need to tunnel our i2c commands through the EC. 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci The node for this device should be under a cros-ec node like 228c2ecf20Sopenharmony_ci google,cros-ec-spi or google,cros-ec-i2c. 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ciallOf: 258c2ecf20Sopenharmony_ci - $ref: i2c-controller.yaml# 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ciproperties: 288c2ecf20Sopenharmony_ci compatible: 298c2ecf20Sopenharmony_ci const: google,cros-ec-i2c-tunnel 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci google,remote-bus: 328c2ecf20Sopenharmony_ci description: The EC bus we'd like to talk to. 338c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_cirequired: 368c2ecf20Sopenharmony_ci - compatible 378c2ecf20Sopenharmony_ci - google,remote-bus 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ciunevaluatedProperties: false 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ciexamples: 428c2ecf20Sopenharmony_ci - | 438c2ecf20Sopenharmony_ci spi0 { 448c2ecf20Sopenharmony_ci #address-cells = <1>; 458c2ecf20Sopenharmony_ci #size-cells = <0>; 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci cros-ec@0 { 488c2ecf20Sopenharmony_ci compatible = "google,cros-ec-spi"; 498c2ecf20Sopenharmony_ci reg = <0>; 508c2ecf20Sopenharmony_ci spi-max-frequency = <5000000>; 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci i2c-tunnel { 538c2ecf20Sopenharmony_ci compatible = "google,cros-ec-i2c-tunnel"; 548c2ecf20Sopenharmony_ci #address-cells = <1>; 558c2ecf20Sopenharmony_ci #size-cells = <0>; 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci google,remote-bus = <0>; 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci battery: sbs-battery@b { 608c2ecf20Sopenharmony_ci compatible = "sbs,sbs-battery"; 618c2ecf20Sopenharmony_ci reg = <0xb>; 628c2ecf20Sopenharmony_ci sbs,poll-retry-count = <1>; 638c2ecf20Sopenharmony_ci }; 648c2ecf20Sopenharmony_ci }; 658c2ecf20Sopenharmony_ci }; 668c2ecf20Sopenharmony_ci }; 67