forked from Minki/linux
dt-bindings: i2c: convert i2c-cros-ec-tunnel to json-schema
Convert the google,cros-ec-i2c-tunnel binding to YAML and add it as a property of google,cros-ec.yaml. Reviewed-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: Ricardo Cañuelo <ricardo.canuelo@collabora.com> Link: https://lore.kernel.org/r/20201021114308.25485-2-ricardo.canuelo@collabora.com [robh: add ref to i2c-controller.yaml] Signed-off-by: Rob Herring <robh@kernel.org>
This commit is contained in:
parent
ca05f33316
commit
1acd4577a6
@ -0,0 +1,66 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
|
||||
$id: http://devicetree.org/schemas/i2c/google,cros-ec-i2c-tunnel.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: I2C bus that tunnels through the ChromeOS EC (cros-ec)
|
||||
|
||||
maintainers:
|
||||
- Doug Anderson <dianders@chromium.org>
|
||||
- Benson Leung <bleung@chromium.org>
|
||||
- Enric Balletbo i Serra <enric.balletbo@collabora.com>
|
||||
|
||||
description: |
|
||||
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.
|
||||
|
||||
allOf:
|
||||
- $ref: i2c-controller.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: google,cros-ec-i2c-tunnel
|
||||
|
||||
google,remote-bus:
|
||||
description: The EC bus we'd like to talk to.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- google,remote-bus
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
spi0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
cros-ec@0 {
|
||||
compatible = "google,cros-ec-spi";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <5000000>;
|
||||
|
||||
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>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
@ -1,39 +0,0 @@
|
||||
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>;
|
||||
};
|
||||
};
|
||||
}
|
@ -71,6 +71,11 @@ properties:
|
||||
wakeup-source:
|
||||
description: Button can wake-up the system.
|
||||
|
||||
patternProperties:
|
||||
"^i2c-tunnel[0-9]*$":
|
||||
type: object
|
||||
$ref: "/schemas/i2c/google,cros-ec-i2c-tunnel.yaml#"
|
||||
|
||||
required:
|
||||
- compatible
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user