1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only 2c66ec88fSEmmanuel Vadot%YAML 1.2 3c66ec88fSEmmanuel Vadot--- 4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/connector/usb-connector.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadottitle: USB Connector 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 10c66ec88fSEmmanuel Vadot - Rob Herring <robh@kernel.org> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadotdescription: 13c66ec88fSEmmanuel Vadot A USB connector node represents a physical USB connector. It should be a child 146be33864SEmmanuel Vadot of a USB interface controller or a separate node when it is attached to both 156be33864SEmmanuel Vadot MUX and USB interface controller. 16c66ec88fSEmmanuel Vadot 17c66ec88fSEmmanuel Vadotproperties: 18c66ec88fSEmmanuel Vadot compatible: 19c66ec88fSEmmanuel Vadot oneOf: 20c66ec88fSEmmanuel Vadot - enum: 21c66ec88fSEmmanuel Vadot - usb-a-connector 22c66ec88fSEmmanuel Vadot - usb-b-connector 23c66ec88fSEmmanuel Vadot - usb-c-connector 24c66ec88fSEmmanuel Vadot 25c66ec88fSEmmanuel Vadot - items: 26c66ec88fSEmmanuel Vadot - const: gpio-usb-b-connector 27c66ec88fSEmmanuel Vadot - const: usb-b-connector 28c66ec88fSEmmanuel Vadot 296be33864SEmmanuel Vadot - items: 306be33864SEmmanuel Vadot - const: samsung,usb-connector-11pin 316be33864SEmmanuel Vadot - const: usb-b-connector 326be33864SEmmanuel Vadot 33aa1a8ff2SEmmanuel Vadot reg: 34aa1a8ff2SEmmanuel Vadot maxItems: 1 35aa1a8ff2SEmmanuel Vadot 36c66ec88fSEmmanuel Vadot label: 37c66ec88fSEmmanuel Vadot description: Symbolic name for the connector. 38c66ec88fSEmmanuel Vadot 39c66ec88fSEmmanuel Vadot type: 40c66ec88fSEmmanuel Vadot description: Size of the connector, should be specified in case of 41c66ec88fSEmmanuel Vadot non-fullsize 'usb-a-connector' or 'usb-b-connector' compatible 42c66ec88fSEmmanuel Vadot connectors. 435def4c47SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 44c66ec88fSEmmanuel Vadot 45c66ec88fSEmmanuel Vadot enum: 46c66ec88fSEmmanuel Vadot - mini 47c66ec88fSEmmanuel Vadot - micro 48c66ec88fSEmmanuel Vadot 49c66ec88fSEmmanuel Vadot self-powered: 50c66ec88fSEmmanuel Vadot description: Set this property if the USB device has its own power source. 51c66ec88fSEmmanuel Vadot type: boolean 52c66ec88fSEmmanuel Vadot 53c66ec88fSEmmanuel Vadot # The following are optional properties for "usb-b-connector". 54c66ec88fSEmmanuel Vadot id-gpios: 55c66ec88fSEmmanuel Vadot description: An input gpio for USB ID pin. 56c66ec88fSEmmanuel Vadot maxItems: 1 57c66ec88fSEmmanuel Vadot 58c66ec88fSEmmanuel Vadot vbus-gpios: 59c66ec88fSEmmanuel Vadot description: An input gpio for USB VBus pin, used to detect presence of 60c66ec88fSEmmanuel Vadot VBUS 5V. 61c66ec88fSEmmanuel Vadot maxItems: 1 62c66ec88fSEmmanuel Vadot 63c66ec88fSEmmanuel Vadot vbus-supply: 64c66ec88fSEmmanuel Vadot description: A phandle to the regulator for USB VBUS if needed when host 65c66ec88fSEmmanuel Vadot mode or dual role mode is supported. 66c66ec88fSEmmanuel Vadot Particularly, if use an output GPIO to control a VBUS regulator, should 67c66ec88fSEmmanuel Vadot model it as a regulator. See bindings/regulator/fixed-regulator.yaml 68c66ec88fSEmmanuel Vadot 69c66ec88fSEmmanuel Vadot power-role: 70c66ec88fSEmmanuel Vadot description: Determines the power role that the Type C connector will 71c66ec88fSEmmanuel Vadot support. "dual" refers to Dual Role Port (DRP). 725def4c47SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 73c66ec88fSEmmanuel Vadot 74c66ec88fSEmmanuel Vadot enum: 75c66ec88fSEmmanuel Vadot - source 76c66ec88fSEmmanuel Vadot - sink 77c66ec88fSEmmanuel Vadot - dual 78c66ec88fSEmmanuel Vadot 79c66ec88fSEmmanuel Vadot try-power-role: 80c66ec88fSEmmanuel Vadot description: Preferred power role. 815def4c47SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 82c66ec88fSEmmanuel Vadot 83c66ec88fSEmmanuel Vadot enum: 84c66ec88fSEmmanuel Vadot - source 85c66ec88fSEmmanuel Vadot - sink 86c66ec88fSEmmanuel Vadot - dual 87c66ec88fSEmmanuel Vadot 88c66ec88fSEmmanuel Vadot data-role: 89c66ec88fSEmmanuel Vadot description: Data role if Type C connector supports USB data. "dual" refers 90c66ec88fSEmmanuel Vadot Dual Role Device (DRD). 915def4c47SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 92c66ec88fSEmmanuel Vadot 93c66ec88fSEmmanuel Vadot enum: 94c66ec88fSEmmanuel Vadot - host 95c66ec88fSEmmanuel Vadot - device 96c66ec88fSEmmanuel Vadot - dual 97c66ec88fSEmmanuel Vadot 985def4c47SEmmanuel Vadot typec-power-opmode: 995def4c47SEmmanuel Vadot description: Determines the power operation mode that the Type C connector 1005def4c47SEmmanuel Vadot will support and will advertise through CC pins when it has no power 1015def4c47SEmmanuel Vadot delivery support. 1025def4c47SEmmanuel Vadot - "default" corresponds to default USB voltage and current defined by the 1035def4c47SEmmanuel Vadot USB 2.0 and USB 3.2 specifications, 5V 500mA for USB 2.0 ports and 1045def4c47SEmmanuel Vadot 5V 900mA or 1500mA for USB 3.2 ports in single-lane or dual-lane 1055def4c47SEmmanuel Vadot operation respectively. 1065def4c47SEmmanuel Vadot - "1.5A" and "3.0A", 5V 1.5A and 5V 3.0A respectively, as defined in USB 1075def4c47SEmmanuel Vadot Type-C Cable and Connector specification, when Power Delivery is not 1085def4c47SEmmanuel Vadot supported. 109c9ccf3a3SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 1105def4c47SEmmanuel Vadot enum: 1115def4c47SEmmanuel Vadot - default 1125def4c47SEmmanuel Vadot - 1.5A 1135def4c47SEmmanuel Vadot - 3.0A 1145def4c47SEmmanuel Vadot 115354d7675SEmmanuel Vadot pd-disable: 116354d7675SEmmanuel Vadot description: Set this property if the Type-C connector has no power delivery support. 117354d7675SEmmanuel Vadot type: boolean 118354d7675SEmmanuel Vadot 119c66ec88fSEmmanuel Vadot # The following are optional properties for "usb-c-connector" with power 120c66ec88fSEmmanuel Vadot # delivery support. 1215def4c47SEmmanuel Vadot sink-vdos: 1225def4c47SEmmanuel Vadot description: An array of u32 with each entry, a Vendor Defined Message Object (VDO), 1235def4c47SEmmanuel Vadot providing additional information corresponding to the product, the detailed bit 1245def4c47SEmmanuel Vadot definitions and the order of each VDO can be found in 1255def4c47SEmmanuel Vadot "USB Power Delivery Specification Revision 3.0, Version 2.0 + ECNs 2020-12-10" 1265def4c47SEmmanuel Vadot chapter 6.4.4.3.1 Discover Identity. User can specify the VDO array via 1275def4c47SEmmanuel Vadot VDO_IDH/_CERT/_PRODUCT/_UFP/_DFP/_PCABLE/_ACABLE(1/2)/_VPD() defined in 1285def4c47SEmmanuel Vadot dt-bindings/usb/pd.h. 1295def4c47SEmmanuel Vadot minItems: 3 1305def4c47SEmmanuel Vadot maxItems: 6 1315def4c47SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 1325def4c47SEmmanuel Vadot 1332eb4d8dcSEmmanuel Vadot sink-vdos-v1: 1342eb4d8dcSEmmanuel Vadot description: An array of u32 with each entry, a Vendor Defined Message Object (VDO), 1352eb4d8dcSEmmanuel Vadot providing additional information corresponding to the product, the detailed bit 1362eb4d8dcSEmmanuel Vadot definitions and the order of each VDO can be found in 1372eb4d8dcSEmmanuel Vadot "USB Power Delivery Specification Revision 2.0, Version 1.3" chapter 6.4.4.3.1 Discover 1382eb4d8dcSEmmanuel Vadot Identity. User can specify the VDO array via VDO_IDH/_CERT/_PRODUCT/_CABLE/_AMA defined in 1392eb4d8dcSEmmanuel Vadot dt-bindings/usb/pd.h. 1402eb4d8dcSEmmanuel Vadot minItems: 3 1412eb4d8dcSEmmanuel Vadot maxItems: 6 1422eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 1432eb4d8dcSEmmanuel Vadot 144*8d13bc63SEmmanuel Vadot accessory-mode-audio: 145*8d13bc63SEmmanuel Vadot type: boolean 146*8d13bc63SEmmanuel Vadot description: Whether the device supports Audio Adapter Accessory Mode. This 147*8d13bc63SEmmanuel Vadot is only necessary if there are no other means to discover supported 148*8d13bc63SEmmanuel Vadot alternative modes (e.g. through the UCSI firmware interface). 149*8d13bc63SEmmanuel Vadot 150*8d13bc63SEmmanuel Vadot accessory-mode-debug: 151*8d13bc63SEmmanuel Vadot type: boolean 152*8d13bc63SEmmanuel Vadot description: Whether the device supports Debug Accessory Mode. This 153*8d13bc63SEmmanuel Vadot is only necessary if there are no other means to discover supported 154*8d13bc63SEmmanuel Vadot alternative modes (e.g. through the UCSI firmware interface). 155*8d13bc63SEmmanuel Vadot 156*8d13bc63SEmmanuel Vadot altmodes: 157*8d13bc63SEmmanuel Vadot type: object 158*8d13bc63SEmmanuel Vadot description: List of Alternative Modes supported by the schematics on the 159*8d13bc63SEmmanuel Vadot particular device. This is only necessary if there are no other means to 160*8d13bc63SEmmanuel Vadot discover supported alternative modes (e.g. through the UCSI firmware 161*8d13bc63SEmmanuel Vadot interface). 162*8d13bc63SEmmanuel Vadot 163*8d13bc63SEmmanuel Vadot additionalProperties: false 164*8d13bc63SEmmanuel Vadot 165*8d13bc63SEmmanuel Vadot patternProperties: 166*8d13bc63SEmmanuel Vadot "^(displayport)$": 167*8d13bc63SEmmanuel Vadot type: object 168*8d13bc63SEmmanuel Vadot description: 169*8d13bc63SEmmanuel Vadot A single USB-C Alternative Mode as supported by the USB-C connector logic. 170*8d13bc63SEmmanuel Vadot 171*8d13bc63SEmmanuel Vadot additionalProperties: false 172*8d13bc63SEmmanuel Vadot 173*8d13bc63SEmmanuel Vadot properties: 174*8d13bc63SEmmanuel Vadot svid: 175*8d13bc63SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint16 176*8d13bc63SEmmanuel Vadot description: Unique value assigned by USB-IF to the Vendor / AltMode. 177*8d13bc63SEmmanuel Vadot enum: [ 0xff01 ] 178*8d13bc63SEmmanuel Vadot vdo: 179*8d13bc63SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 180*8d13bc63SEmmanuel Vadot description: VDO returned by Discover Modes USB PD command. 181c66ec88fSEmmanuel Vadot 182f126890aSEmmanuel Vadot port: 183f126890aSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 184f126890aSEmmanuel Vadot description: OF graph bindings modeling a data bus to the connector, e.g. 185f126890aSEmmanuel Vadot there is a single High Speed (HS) port present in this connector. If there 186f126890aSEmmanuel Vadot is more than one bus (several port, with 'reg' property), they can be grouped 187f126890aSEmmanuel Vadot under 'ports'. 188f126890aSEmmanuel Vadot 189c66ec88fSEmmanuel Vadot ports: 1905def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 1915def4c47SEmmanuel Vadot description: OF graph bindings modeling any data bus to the connector 1925def4c47SEmmanuel Vadot unless the bus is between parent node and the connector. Since a single 1935def4c47SEmmanuel Vadot connector can have multiple data buses every bus has an assigned OF graph 1945def4c47SEmmanuel Vadot port number as described below. 1955def4c47SEmmanuel Vadot 196c66ec88fSEmmanuel Vadot properties: 197c66ec88fSEmmanuel Vadot port@0: 1985def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 199c66ec88fSEmmanuel Vadot description: High Speed (HS), present in all connectors. 200c66ec88fSEmmanuel Vadot 201c66ec88fSEmmanuel Vadot port@1: 2025def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 203c66ec88fSEmmanuel Vadot description: Super Speed (SS), present in SS capable connectors. 204c66ec88fSEmmanuel Vadot 205c66ec88fSEmmanuel Vadot port@2: 2065def4c47SEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 207c66ec88fSEmmanuel Vadot description: Sideband Use (SBU), present in USB-C. This describes the 208c66ec88fSEmmanuel Vadot alternate mode connection of which SBU is a part. 209c66ec88fSEmmanuel Vadot 210c66ec88fSEmmanuel Vadot required: 211c66ec88fSEmmanuel Vadot - port@0 212c66ec88fSEmmanuel Vadot 2135def4c47SEmmanuel Vadot new-source-frs-typec-current: 2145def4c47SEmmanuel Vadot description: Initial current capability of the new source when vSafe5V 2155def4c47SEmmanuel Vadot is applied during PD3.0 Fast Role Swap. "Table 6-14 Fixed Supply PDO - Sink" 2165def4c47SEmmanuel Vadot of "USB Power Delivery Specification Revision 3.0, Version 1.2" provides the 2175def4c47SEmmanuel Vadot different power levels and "6.4.1.3.1.6 Fast Role Swap USB Type-C Current" 2185def4c47SEmmanuel Vadot provides a detailed description of the field. The sink PDO from current source 2195def4c47SEmmanuel Vadot reflects the current source's(i.e. transmitter of the FRS signal) power 2205def4c47SEmmanuel Vadot requirement during fr swap. The current sink (i.e. receiver of the FRS signal), 2215def4c47SEmmanuel Vadot a.k.a new source, should check if it will be able to satisfy the current source's, 2225def4c47SEmmanuel Vadot new sink's, requirement during frswap before enabling the frs signal reception. 2235def4c47SEmmanuel Vadot This property refers to maximum current capability that the current sink can 2245def4c47SEmmanuel Vadot satisfy. During FRS, VBUS voltage is at 5V, as the partners are in implicit 2255def4c47SEmmanuel Vadot contract, hence, the power level is only a function of the current capability. 2265def4c47SEmmanuel Vadot "1" refers to default USB power level as described by "Table 6-14 Fixed Supply PDO - Sink". 2275def4c47SEmmanuel Vadot "2" refers to 1.5A@5V. 2285def4c47SEmmanuel Vadot "3" refers to 3.0A@5V. 2295def4c47SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 2305def4c47SEmmanuel Vadot enum: [1, 2, 3] 2315def4c47SEmmanuel Vadot 2322eb4d8dcSEmmanuel Vadot slow-charger-loop: 2332eb4d8dcSEmmanuel Vadot description: Allows PMIC charger loops which are slow(i.e. cannot meet the 15ms deadline) to 2342eb4d8dcSEmmanuel Vadot still comply to pSnkStby i.e Maximum power that can be consumed by sink while in Sink Standby 2352eb4d8dcSEmmanuel Vadot state as defined in 7.4.2 Sink Electrical Parameters of USB Power Delivery Specification 2362eb4d8dcSEmmanuel Vadot Revision 3.0, Version 1.2. When the property is set, the port requests pSnkStby(2.5W - 2372eb4d8dcSEmmanuel Vadot 5V@500mA) upon entering SNK_DISCOVERY(instead of 3A or the 1.5A, Rp current advertised, during 238aa1a8ff2SEmmanuel Vadot SNK_DISCOVERY) and the actual current limit after reception of PS_Ready for PD link or during 2392eb4d8dcSEmmanuel Vadot SNK_READY for non-pd link. 2402eb4d8dcSEmmanuel Vadot type: boolean 2412eb4d8dcSEmmanuel Vadot 242*8d13bc63SEmmanuel Vadot capabilities: 243*8d13bc63SEmmanuel Vadot description: A child node to contain all the selectable USB Power Delivery capabilities. 244*8d13bc63SEmmanuel Vadot type: object 245*8d13bc63SEmmanuel Vadot 246*8d13bc63SEmmanuel Vadot patternProperties: 247*8d13bc63SEmmanuel Vadot "^caps-[0-9]+$": 248*8d13bc63SEmmanuel Vadot description: Child nodes under "capabilities" node. Each node contains a selectable USB 249*8d13bc63SEmmanuel Vadot Power Delivery capability. 250*8d13bc63SEmmanuel Vadot type: object 251*8d13bc63SEmmanuel Vadot $ref: "#/$defs/capabilities" 252*8d13bc63SEmmanuel Vadot unevaluatedProperties: false 253*8d13bc63SEmmanuel Vadot 254*8d13bc63SEmmanuel Vadot additionalProperties: false 255*8d13bc63SEmmanuel Vadot 2562eb4d8dcSEmmanuel Vadotdependencies: 257aa1a8ff2SEmmanuel Vadot sink-vdos-v1: [ sink-vdos ] 258aa1a8ff2SEmmanuel Vadot sink-vdos: [ sink-vdos-v1 ] 2592eb4d8dcSEmmanuel Vadot 260c66ec88fSEmmanuel Vadotrequired: 261c66ec88fSEmmanuel Vadot - compatible 262c66ec88fSEmmanuel Vadot 263*8d13bc63SEmmanuel Vadot$defs: 264*8d13bc63SEmmanuel Vadot capabilities: 265*8d13bc63SEmmanuel Vadot type: object 266*8d13bc63SEmmanuel Vadot 267*8d13bc63SEmmanuel Vadot properties: 268*8d13bc63SEmmanuel Vadot source-pdos: 269*8d13bc63SEmmanuel Vadot description: An array of u32 with each entry providing supported power 270*8d13bc63SEmmanuel Vadot source data object(PDO), the detailed bit definitions of PDO can be found 271*8d13bc63SEmmanuel Vadot in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.2 272*8d13bc63SEmmanuel Vadot Source_Capabilities Message, the order of each entry(PDO) should follow 273*8d13bc63SEmmanuel Vadot the PD spec chapter 6.4.1. Required for power source and power dual role. 274*8d13bc63SEmmanuel Vadot User can specify the source PDO array via PDO_FIXED/BATT/VAR/PPS_APDO() 275*8d13bc63SEmmanuel Vadot defined in dt-bindings/usb/pd.h. 276*8d13bc63SEmmanuel Vadot minItems: 1 277*8d13bc63SEmmanuel Vadot maxItems: 7 278*8d13bc63SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 279*8d13bc63SEmmanuel Vadot 280*8d13bc63SEmmanuel Vadot sink-pdos: 281*8d13bc63SEmmanuel Vadot description: An array of u32 with each entry providing supported power sink 282*8d13bc63SEmmanuel Vadot data object(PDO), the detailed bit definitions of PDO can be found in 283*8d13bc63SEmmanuel Vadot "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.3 284*8d13bc63SEmmanuel Vadot Sink Capabilities Message, the order of each entry(PDO) should follow the 285*8d13bc63SEmmanuel Vadot PD spec chapter 6.4.1. Required for power sink and power dual role. User 286*8d13bc63SEmmanuel Vadot can specify the sink PDO array via PDO_FIXED/BATT/VAR/PPS_APDO() defined 287*8d13bc63SEmmanuel Vadot in dt-bindings/usb/pd.h. 288*8d13bc63SEmmanuel Vadot minItems: 1 289*8d13bc63SEmmanuel Vadot maxItems: 7 290*8d13bc63SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 291*8d13bc63SEmmanuel Vadot 292*8d13bc63SEmmanuel Vadot op-sink-microwatt: 293*8d13bc63SEmmanuel Vadot description: Sink required operating power in microwatt, if source can't 294*8d13bc63SEmmanuel Vadot offer the power, Capability Mismatch is set. Required for power sink and 295*8d13bc63SEmmanuel Vadot power dual role. 296*8d13bc63SEmmanuel Vadot 297c66ec88fSEmmanuel VadotallOf: 298*8d13bc63SEmmanuel Vadot - $ref: "#/$defs/capabilities" 299c66ec88fSEmmanuel Vadot - if: 300c66ec88fSEmmanuel Vadot properties: 301c66ec88fSEmmanuel Vadot compatible: 302c66ec88fSEmmanuel Vadot contains: 303c66ec88fSEmmanuel Vadot const: gpio-usb-b-connector 304c66ec88fSEmmanuel Vadot then: 305c66ec88fSEmmanuel Vadot anyOf: 306c66ec88fSEmmanuel Vadot - required: 307c66ec88fSEmmanuel Vadot - vbus-gpios 308c66ec88fSEmmanuel Vadot - required: 309c66ec88fSEmmanuel Vadot - id-gpios 310c66ec88fSEmmanuel Vadot 3116be33864SEmmanuel Vadot - if: 3126be33864SEmmanuel Vadot properties: 3136be33864SEmmanuel Vadot compatible: 3146be33864SEmmanuel Vadot contains: 3156be33864SEmmanuel Vadot const: samsung,usb-connector-11pin 3166be33864SEmmanuel Vadot then: 3176be33864SEmmanuel Vadot properties: 3186be33864SEmmanuel Vadot type: 3196be33864SEmmanuel Vadot const: micro 3206be33864SEmmanuel Vadot 3215def4c47SEmmanuel VadotanyOf: 3225def4c47SEmmanuel Vadot - not: 3235def4c47SEmmanuel Vadot required: 3245def4c47SEmmanuel Vadot - typec-power-opmode 3255def4c47SEmmanuel Vadot - new-source-frs-typec-current 3265def4c47SEmmanuel Vadot 327*8d13bc63SEmmanuel VadotunevaluatedProperties: false 3286be33864SEmmanuel Vadot 329c66ec88fSEmmanuel Vadotexamples: 330c66ec88fSEmmanuel Vadot # Micro-USB connector with HS lines routed via controller (MUIC). 331c66ec88fSEmmanuel Vadot - | 332c66ec88fSEmmanuel Vadot muic-max77843 { 333c66ec88fSEmmanuel Vadot usb_con1: connector { 334c66ec88fSEmmanuel Vadot compatible = "usb-b-connector"; 335c66ec88fSEmmanuel Vadot label = "micro-USB"; 336c66ec88fSEmmanuel Vadot type = "micro"; 337c66ec88fSEmmanuel Vadot }; 338c66ec88fSEmmanuel Vadot }; 339c66ec88fSEmmanuel Vadot 340c66ec88fSEmmanuel Vadot # USB-C connector attached to CC controller (s2mm005), HS lines routed 341c66ec88fSEmmanuel Vadot # to companion PMIC (max77865), SS lines to USB3 PHY and SBU to DisplayPort. 342c66ec88fSEmmanuel Vadot # DisplayPort video lines are routed to the connector via SS mux in USB3 PHY. 343c66ec88fSEmmanuel Vadot - | 344c66ec88fSEmmanuel Vadot ccic: s2mm005 { 345c66ec88fSEmmanuel Vadot usb_con2: connector { 346c66ec88fSEmmanuel Vadot compatible = "usb-c-connector"; 347c66ec88fSEmmanuel Vadot label = "USB-C"; 348c66ec88fSEmmanuel Vadot 349*8d13bc63SEmmanuel Vadot altmodes { 350*8d13bc63SEmmanuel Vadot displayport { 351*8d13bc63SEmmanuel Vadot svid = /bits/ 16 <0xff01>; 352*8d13bc63SEmmanuel Vadot vdo = <0x00001c46>; 353*8d13bc63SEmmanuel Vadot }; 354*8d13bc63SEmmanuel Vadot }; 355*8d13bc63SEmmanuel Vadot 356c66ec88fSEmmanuel Vadot ports { 357c66ec88fSEmmanuel Vadot #address-cells = <1>; 358c66ec88fSEmmanuel Vadot #size-cells = <0>; 359c66ec88fSEmmanuel Vadot 360c66ec88fSEmmanuel Vadot port@0 { 361c66ec88fSEmmanuel Vadot reg = <0>; 362c66ec88fSEmmanuel Vadot usb_con_hs: endpoint { 363c66ec88fSEmmanuel Vadot remote-endpoint = <&max77865_usbc_hs>; 364c66ec88fSEmmanuel Vadot }; 365c66ec88fSEmmanuel Vadot }; 366c66ec88fSEmmanuel Vadot port@1 { 367c66ec88fSEmmanuel Vadot reg = <1>; 368c66ec88fSEmmanuel Vadot usb_con_ss: endpoint { 369c66ec88fSEmmanuel Vadot remote-endpoint = <&usbdrd_phy_ss>; 370c66ec88fSEmmanuel Vadot }; 371c66ec88fSEmmanuel Vadot }; 372c66ec88fSEmmanuel Vadot port@2 { 373c66ec88fSEmmanuel Vadot reg = <2>; 374c66ec88fSEmmanuel Vadot usb_con_sbu: endpoint { 375c66ec88fSEmmanuel Vadot remote-endpoint = <&dp_aux>; 376c66ec88fSEmmanuel Vadot }; 377c66ec88fSEmmanuel Vadot }; 378c66ec88fSEmmanuel Vadot }; 379c66ec88fSEmmanuel Vadot }; 380c66ec88fSEmmanuel Vadot }; 381c66ec88fSEmmanuel Vadot 382c66ec88fSEmmanuel Vadot # USB-C connector attached to a typec port controller(ptn5110), which has 383c66ec88fSEmmanuel Vadot # power delivery support and enables drp. 384c66ec88fSEmmanuel Vadot - | 385c66ec88fSEmmanuel Vadot #include <dt-bindings/usb/pd.h> 386c66ec88fSEmmanuel Vadot typec: ptn5110 { 387c66ec88fSEmmanuel Vadot usb_con3: connector { 388c66ec88fSEmmanuel Vadot compatible = "usb-c-connector"; 389c66ec88fSEmmanuel Vadot label = "USB-C"; 390c66ec88fSEmmanuel Vadot power-role = "dual"; 391c66ec88fSEmmanuel Vadot try-power-role = "sink"; 392c66ec88fSEmmanuel Vadot source-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)>; 393c66ec88fSEmmanuel Vadot sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM) 394c66ec88fSEmmanuel Vadot PDO_VAR(5000, 12000, 2000)>; 395c66ec88fSEmmanuel Vadot op-sink-microwatt = <10000000>; 396c66ec88fSEmmanuel Vadot }; 397c66ec88fSEmmanuel Vadot }; 398c66ec88fSEmmanuel Vadot 399f126890aSEmmanuel Vadot # USB-C connector attached to SoC with a single High-Speed controller 400f126890aSEmmanuel Vadot - | 401f126890aSEmmanuel Vadot connector { 402f126890aSEmmanuel Vadot compatible = "usb-c-connector"; 403f126890aSEmmanuel Vadot label = "USB-C"; 404f126890aSEmmanuel Vadot 405f126890aSEmmanuel Vadot port { 406f126890aSEmmanuel Vadot high_speed_ep: endpoint { 407f126890aSEmmanuel Vadot remote-endpoint = <&usb_hs_ep>; 408f126890aSEmmanuel Vadot }; 409f126890aSEmmanuel Vadot }; 410f126890aSEmmanuel Vadot }; 411f126890aSEmmanuel Vadot 4126be33864SEmmanuel Vadot # USB-C connector attached to SoC and USB3 typec port controller(hd3ss3220) 4136be33864SEmmanuel Vadot # with SS 2:1 MUX. HS lines routed to SoC, SS lines routed to the MUX and 4146be33864SEmmanuel Vadot # the output of MUX is connected to the SoC. 4156be33864SEmmanuel Vadot - | 4166be33864SEmmanuel Vadot connector { 4176be33864SEmmanuel Vadot compatible = "usb-c-connector"; 4186be33864SEmmanuel Vadot label = "USB-C"; 4196be33864SEmmanuel Vadot data-role = "dual"; 4206be33864SEmmanuel Vadot 4216be33864SEmmanuel Vadot ports { 4226be33864SEmmanuel Vadot #address-cells = <1>; 4236be33864SEmmanuel Vadot #size-cells = <0>; 4246be33864SEmmanuel Vadot port@0 { 4256be33864SEmmanuel Vadot reg = <0>; 4266be33864SEmmanuel Vadot hs_ep: endpoint { 4276be33864SEmmanuel Vadot remote-endpoint = <&usb3_hs_ep>; 4286be33864SEmmanuel Vadot }; 4296be33864SEmmanuel Vadot }; 4306be33864SEmmanuel Vadot port@1 { 4316be33864SEmmanuel Vadot reg = <1>; 4326be33864SEmmanuel Vadot ss_ep: endpoint { 4336be33864SEmmanuel Vadot remote-endpoint = <&hd3ss3220_in_ep>; 4346be33864SEmmanuel Vadot }; 4356be33864SEmmanuel Vadot }; 4366be33864SEmmanuel Vadot }; 4376be33864SEmmanuel Vadot }; 4386be33864SEmmanuel Vadot 439c66ec88fSEmmanuel Vadot # USB connector with GPIO control lines 440c66ec88fSEmmanuel Vadot - | 441c66ec88fSEmmanuel Vadot #include <dt-bindings/gpio/gpio.h> 442c66ec88fSEmmanuel Vadot 443c66ec88fSEmmanuel Vadot usb { 444c66ec88fSEmmanuel Vadot connector { 445c66ec88fSEmmanuel Vadot compatible = "gpio-usb-b-connector", "usb-b-connector"; 446c66ec88fSEmmanuel Vadot type = "micro"; 447c66ec88fSEmmanuel Vadot id-gpios = <&pio 12 GPIO_ACTIVE_HIGH>; 448c66ec88fSEmmanuel Vadot vbus-supply = <&usb_p0_vbus>; 449c66ec88fSEmmanuel Vadot }; 450c66ec88fSEmmanuel Vadot }; 4516be33864SEmmanuel Vadot 4526be33864SEmmanuel Vadot # Micro-USB connector with HS lines routed via controller (MUIC) and MHL 4536be33864SEmmanuel Vadot # lines connected to HDMI-MHL bridge (sii8620) on Samsung Exynos5433-based 4546be33864SEmmanuel Vadot # mobile phone 4556be33864SEmmanuel Vadot - | 4566be33864SEmmanuel Vadot muic-max77843 { 4576be33864SEmmanuel Vadot usb_con4: connector { 4586be33864SEmmanuel Vadot compatible = "samsung,usb-connector-11pin", "usb-b-connector"; 4596be33864SEmmanuel Vadot label = "micro-USB"; 4606be33864SEmmanuel Vadot type = "micro"; 4616be33864SEmmanuel Vadot 4626be33864SEmmanuel Vadot ports { 4636be33864SEmmanuel Vadot #address-cells = <1>; 4646be33864SEmmanuel Vadot #size-cells = <0>; 4656be33864SEmmanuel Vadot 4666be33864SEmmanuel Vadot port@0 { 4676be33864SEmmanuel Vadot reg = <0>; 4686be33864SEmmanuel Vadot muic_to_usb: endpoint { 4696be33864SEmmanuel Vadot remote-endpoint = <&usb_to_muic>; 4706be33864SEmmanuel Vadot }; 4716be33864SEmmanuel Vadot }; 4726be33864SEmmanuel Vadot port@3 { 4736be33864SEmmanuel Vadot reg = <3>; 4746be33864SEmmanuel Vadot usb_con_mhl: endpoint { 4756be33864SEmmanuel Vadot remote-endpoint = <&sii8620_mhl>; 4766be33864SEmmanuel Vadot }; 4776be33864SEmmanuel Vadot }; 4786be33864SEmmanuel Vadot }; 4796be33864SEmmanuel Vadot }; 4806be33864SEmmanuel Vadot }; 481