xref: /openbmc/linux/Documentation/devicetree/bindings/extcon/extcon-usbc-cros-ec.yaml (revision 75b1a8f9d62e50f05d0e4e9f3c8bcde32527ffc1)
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  - Enric Balletbo i Serra <enric.balletbo@collabora.com>
12
13description: |
14  On ChromeOS systems with USB Type C ports, the ChromeOS Embedded Controller is
15  able to detect the state of external accessories such as display adapters
16  or USB devices when said accessories are attached or detached.
17  The node for this device must be under a cros-ec node like google,cros-ec-spi
18  or google,cros-ec-i2c.
19
20properties:
21  compatible:
22    const: google,extcon-usbc-cros-ec
23
24  google,usb-port-id:
25    $ref: /schemas/types.yaml#/definitions/uint32
26    description: the port id
27    minimum: 0
28    maximum: 255
29
30required:
31  - compatible
32  - google,usb-port-id
33
34additionalProperties: false
35
36examples:
37  - |
38    spi0 {
39        #address-cells = <1>;
40        #size-cells = <0>;
41        cros-ec@0 {
42            compatible = "google,cros-ec-spi";
43            reg = <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