1c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2c9ccf3a3SEmmanuel Vadot%YAML 1.2 3c9ccf3a3SEmmanuel Vadot--- 4c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/usb/willsemi,wusb3801.yaml# 5c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c9ccf3a3SEmmanuel Vadot 7*8bab661aSEmmanuel Vadottitle: WUSB3801 Type-C port controller 8c9ccf3a3SEmmanuel Vadot 9c9ccf3a3SEmmanuel Vadotdescription: 10c9ccf3a3SEmmanuel Vadot The Will Semiconductor WUSB3801 is a USB Type-C port controller which 11c9ccf3a3SEmmanuel Vadot supports role and plug orientation detection using the CC pins. It is 12c9ccf3a3SEmmanuel Vadot compatible with the USB Type-C Cable and Connector Specification v1.2. 13c9ccf3a3SEmmanuel Vadot 14c9ccf3a3SEmmanuel Vadotmaintainers: 15c9ccf3a3SEmmanuel Vadot - Samuel Holland <samuel@sholland.org> 16c9ccf3a3SEmmanuel Vadot 17c9ccf3a3SEmmanuel Vadotproperties: 18c9ccf3a3SEmmanuel Vadot compatible: 19c9ccf3a3SEmmanuel Vadot enum: 20c9ccf3a3SEmmanuel Vadot - willsemi,wusb3801 21c9ccf3a3SEmmanuel Vadot 22c9ccf3a3SEmmanuel Vadot reg: 23c9ccf3a3SEmmanuel Vadot maxItems: 1 24c9ccf3a3SEmmanuel Vadot 25c9ccf3a3SEmmanuel Vadot interrupts: 26c9ccf3a3SEmmanuel Vadot maxItems: 1 27c9ccf3a3SEmmanuel Vadot 28c9ccf3a3SEmmanuel Vadot connector: 29c9ccf3a3SEmmanuel Vadot type: object 30c9ccf3a3SEmmanuel Vadot $ref: ../connector/usb-connector.yaml# 317ef62cebSEmmanuel Vadot unevaluatedProperties: false 32c9ccf3a3SEmmanuel Vadot description: 33c9ccf3a3SEmmanuel Vadot The managed USB Type-C connector. Since WUSB3801 does not support 34c9ccf3a3SEmmanuel Vadot Power Delivery, the node should have the "pd-disable" property. 35c9ccf3a3SEmmanuel Vadot 36c9ccf3a3SEmmanuel Vadot properties: 37c9ccf3a3SEmmanuel Vadot compatible: 38c9ccf3a3SEmmanuel Vadot const: usb-c-connector 39c9ccf3a3SEmmanuel Vadot 40c9ccf3a3SEmmanuel Vadot required: 41c9ccf3a3SEmmanuel Vadot - pd-disable 42c9ccf3a3SEmmanuel Vadot 43c9ccf3a3SEmmanuel Vadotrequired: 44c9ccf3a3SEmmanuel Vadot - compatible 45c9ccf3a3SEmmanuel Vadot - reg 46c9ccf3a3SEmmanuel Vadot - interrupts 47c9ccf3a3SEmmanuel Vadot - connector 48c9ccf3a3SEmmanuel Vadot 49c9ccf3a3SEmmanuel VadotadditionalProperties: false 50c9ccf3a3SEmmanuel Vadot 51c9ccf3a3SEmmanuel Vadotexamples: 52c9ccf3a3SEmmanuel Vadot - | 53c9ccf3a3SEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 54c9ccf3a3SEmmanuel Vadot 55c9ccf3a3SEmmanuel Vadot i2c { 56c9ccf3a3SEmmanuel Vadot #address-cells = <1>; 57c9ccf3a3SEmmanuel Vadot #size-cells = <0>; 58c9ccf3a3SEmmanuel Vadot 59c9ccf3a3SEmmanuel Vadot tcpc@60 { 60c9ccf3a3SEmmanuel Vadot compatible = "willsemi,wusb3801"; 61c9ccf3a3SEmmanuel Vadot reg = <0x60>; 62c9ccf3a3SEmmanuel Vadot interrupt-parent = <&gpio0>; 63c9ccf3a3SEmmanuel Vadot interrupts = <4 IRQ_TYPE_LEVEL_LOW>; 64c9ccf3a3SEmmanuel Vadot 65c9ccf3a3SEmmanuel Vadot connector { 66c9ccf3a3SEmmanuel Vadot compatible = "usb-c-connector"; 67c9ccf3a3SEmmanuel Vadot label = "USB-C"; 68c9ccf3a3SEmmanuel Vadot vbus-supply = <&otg_switch>; 69c9ccf3a3SEmmanuel Vadot power-role = "dual"; 70c9ccf3a3SEmmanuel Vadot try-power-role = "sink"; 71c9ccf3a3SEmmanuel Vadot data-role = "dual"; 72c9ccf3a3SEmmanuel Vadot typec-power-opmode = "default"; 73c9ccf3a3SEmmanuel Vadot pd-disable; 74c9ccf3a3SEmmanuel Vadot }; 75c9ccf3a3SEmmanuel Vadot }; 76c9ccf3a3SEmmanuel Vadot }; 77