0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/chrome/google,cros-ec-typec.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Google Chrome OS EC(Embedded Controller) Type C port driver.
0008
0009 maintainers:
0010 - Benson Leung <bleung@chromium.org>
0011 - Prashant Malani <pmalani@chromium.org>
0012
0013 description:
0014 Chrome OS devices have an Embedded Controller(EC) which has access to
0015 Type C port state. This node is intended to allow the host to read and
0016 control the Type C ports. The node for this device should be under a
0017 cros-ec node like google,cros-ec-spi.
0018
0019 properties:
0020 compatible:
0021 const: google,cros-ec-typec
0022
0023 '#address-cells':
0024 const: 1
0025
0026 '#size-cells':
0027 const: 0
0028
0029 patternProperties:
0030 '^connector@[0-9a-f]+$':
0031 $ref: /schemas/connector/usb-connector.yaml#
0032 unevaluatedProperties: false
0033 properties:
0034 reg:
0035 maxItems: 1
0036
0037 required:
0038 - compatible
0039
0040 additionalProperties: false
0041
0042 examples:
0043 - |+
0044 spi0 {
0045 #address-cells = <1>;
0046 #size-cells = <0>;
0047
0048 cros_ec: ec@0 {
0049 compatible = "google,cros-ec-spi";
0050 reg = <0>;
0051
0052 typec {
0053 compatible = "google,cros-ec-typec";
0054
0055 #address-cells = <1>;
0056 #size-cells = <0>;
0057
0058 connector@0 {
0059 compatible = "usb-c-connector";
0060 reg = <0>;
0061 power-role = "dual";
0062 data-role = "dual";
0063 try-power-role = "source";
0064 };
0065 };
0066 };
0067 };