xref: /openbmc/linux/Documentation/devicetree/bindings/extcon/extcon-usbc-cros-ec.yaml (revision b4646da0573fae9dfa2b8f1f10936cb6eedd7230)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/extcon/extcon-usbc-cros-ec.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: ChromeOS EC USB Type-C cable and accessories detection
8
9maintainers:
10  - Benson Leung <bleung@chromium.org>
11
12description: |
13  On ChromeOS systems with USB Type C ports, the ChromeOS Embedded Controller is
14  able to detect the state of external accessories such as display adapters
15  or USB devices when said accessories are attached or detached.
16  The node for this device must be under a cros-ec node like google,cros-ec-spi
17  or google,cros-ec-i2c.
18
19properties:
20  compatible:
21    const: google,extcon-usbc-cros-ec
22
23  google,usb-port-id:
24    $ref: /schemas/types.yaml#/definitions/uint32
25    description: the port id
26    minimum: 0
27    maximum: 255
28
29required:
30  - compatible
31  - google,usb-port-id
32
33additionalProperties: false
34
35examples:
36  - |
37    spi {
38        #address-cells = <1>;
39        #size-cells = <0>;
40        cros-ec@0 {
41            compatible = "google,cros-ec-spi";
42            reg = <0>;
43            interrupts = <44 0>;
44
45            usbc_extcon0: extcon0 {
46                compatible = "google,extcon-usbc-cros-ec";
47                google,usb-port-id = <0>;
48            };
49
50            usbc_extcon1: extcon1 {
51                compatible = "google,extcon-usbc-cros-ec";
52                google,usb-port-id = <1>;
53            };
54        };
55    };
56