GNU Linux-libre 5.10.217-gnu1
[releases.git] / Documentation / devicetree / bindings / chrome / google,cros-ec-typec.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/chrome/google,cros-ec-typec.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Google Chrome OS EC(Embedded Controller) Type C port driver.
8
9 maintainers:
10   - Benson Leung <bleung@chromium.org>
11   - Prashant Malani <pmalani@chromium.org>
12
13 description:
14   Chrome OS devices have an Embedded Controller(EC) which has access to
15   Type C port state. This node is intended to allow the host to read and
16   control the Type C ports. The node for this device should be under a
17   cros-ec node like google,cros-ec-spi.
18
19 properties:
20   compatible:
21     const: google,cros-ec-typec
22
23   connector:
24     $ref: /schemas/connector/usb-connector.yaml#
25
26 required:
27   - compatible
28
29 additionalProperties: true #fixme
30
31 examples:
32   - |+
33     spi0 {
34       #address-cells = <1>;
35       #size-cells = <0>;
36
37       cros_ec: ec@0 {
38         compatible = "google,cros-ec-spi";
39         reg = <0>;
40
41         typec {
42           compatible = "google,cros-ec-typec";
43
44           #address-cells = <1>;
45           #size-cells = <0>;
46
47           connector@0 {
48             compatible = "usb-c-connector";
49             reg = <0>;
50             power-role = "dual";
51             data-role = "dual";
52             try-power-role = "source";
53           };
54         };
55       };
56     };