1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/usb/richtek,rt1711h.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Richtek RT1711H Type-C Port Switch and Power Delivery controller 8 9maintainers: 10 - Gene Chen <gene_chen@richtek.com> 11 12description: | 13 The RT1711H is a USB Type-C controller that complies with the latest 14 USB Type-C and PD standards. It does the USB Type-C detection including attach 15 and orientation. It integrates the physical layer of the USB BMC power 16 delivery protocol to allow up to 100W of power. The BMC PD block enables full 17 support for alternative interfaces of the Type-C specification. 18 19properties: 20 compatible: 21 enum: 22 - richtek,rt1711h 23 - richtek,rt1715 24 description: 25 RT1711H support PD20, RT1715 support PD30 except Fast Role Swap. 26 27 reg: 28 maxItems: 1 29 30 interrupts: 31 maxItems: 1 32 33 vbus-supply: 34 description: VBUS power supply 35 36 wakeup-source: 37 type: boolean 38 39 connector: 40 type: object 41 $ref: /schemas/connector/usb-connector.yaml# 42 description: 43 Properties for usb c connector. 44 45additionalProperties: false 46 47required: 48 - compatible 49 - reg 50 - connector 51 - interrupts 52 53examples: 54 - | 55 #include <dt-bindings/interrupt-controller/irq.h> 56 #include <dt-bindings/usb/pd.h> 57 i2c { 58 #address-cells = <1>; 59 #size-cells = <0>; 60 61 rt1711h@4e { 62 compatible = "richtek,rt1711h"; 63 reg = <0x4e>; 64 interrupts-extended = <&gpio26 3 IRQ_TYPE_LEVEL_LOW>; 65 wakeup-source; 66 67 connector { 68 compatible = "usb-c-connector"; 69 label = "USB-C"; 70 data-role = "dual"; 71 power-role = "dual"; 72 try-power-role = "sink"; 73 source-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_DUAL_ROLE | PDO_FIXED_DATA_SWAP)>; 74 sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_DUAL_ROLE | PDO_FIXED_DATA_SWAP)>; 75 op-sink-microwatt = <10000000>; 76 77 ports { 78 #address-cells = <1>; 79 #size-cells = <0>; 80 81 port@0 { 82 reg = <0>; 83 endpoint { 84 remote-endpoint = <&usb_hs>; 85 }; 86 }; 87 port@1 { 88 reg = <1>; 89 endpoint { 90 remote-endpoint = <&usb_ss>; 91 }; 92 }; 93 port@2 { 94 reg = <2>; 95 endpoint { 96 remote-endpoint = <&dp_aux>; 97 }; 98 }; 99 }; 100 }; 101 }; 102 }; 103... 104