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