1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4 5$id: http://devicetree.org/schemas/i2c/google,cros-ec-i2c-tunnel.yaml# 6$schema: http://devicetree.org/meta-schemas/core.yaml# 7 8title: I2C bus that tunnels through the ChromeOS EC (cros-ec) 9 10maintainers: 11 - Doug Anderson <dianders@chromium.org> 12 - Benson Leung <bleung@chromium.org> 13 14description: | 15 On some ChromeOS board designs we've got a connection to the EC 16 (embedded controller) but no direct connection to some devices on the 17 other side of the EC (like a battery and PMIC). To get access to 18 those devices we need to tunnel our i2c commands through the EC. 19 20 The node for this device should be under a cros-ec node like 21 google,cros-ec-spi or google,cros-ec-i2c. 22 23allOf: 24 - $ref: /schemas/i2c/i2c-controller.yaml# 25 26properties: 27 compatible: 28 const: google,cros-ec-i2c-tunnel 29 30 google,remote-bus: 31 description: The EC bus we'd like to talk to. 32 $ref: /schemas/types.yaml#/definitions/uint32 33 34required: 35 - compatible 36 - google,remote-bus 37 38unevaluatedProperties: false 39 40examples: 41 - | 42 spi { 43 #address-cells = <1>; 44 #size-cells = <0>; 45 46 cros-ec@0 { 47 compatible = "google,cros-ec-spi"; 48 reg = <0>; 49 spi-max-frequency = <5000000>; 50 interrupts = <99 0>; 51 52 i2c-tunnel { 53 compatible = "google,cros-ec-i2c-tunnel"; 54 #address-cells = <1>; 55 #size-cells = <0>; 56 57 google,remote-bus = <0>; 58 59 battery: sbs-battery@b { 60 compatible = "sbs,sbs-battery"; 61 reg = <0xb>; 62 sbs,poll-retry-count = <1>; 63 }; 64 }; 65 }; 66 }; 67