1 # SPDX-License-Identifier: GPL-2.0-only
4 $id: http://devicetree.org/schemas/connector/usb-connector.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Rob Herring <robh@kernel.org>
13 A USB connector node represents a physical USB connector. It should be a child
14 of a USB interface controller.
25 - const: gpio-usb-b-connector
26 - const: usb-b-connector
29 description: Symbolic name for the connector.
32 description: Size of the connector, should be specified in case of
33 non-fullsize 'usb-a-connector' or 'usb-b-connector' compatible
35 $ref: /schemas/types.yaml#definitions/string
42 description: Set this property if the USB device has its own power source.
45 # The following are optional properties for "usb-b-connector".
47 description: An input gpio for USB ID pin.
51 description: An input gpio for USB VBus pin, used to detect presence of
56 description: A phandle to the regulator for USB VBUS if needed when host
57 mode or dual role mode is supported.
58 Particularly, if use an output GPIO to control a VBUS regulator, should
59 model it as a regulator. See bindings/regulator/fixed-regulator.yaml
61 # The following are optional properties for "usb-c-connector".
63 description: Determines the power role that the Type C connector will
64 support. "dual" refers to Dual Role Port (DRP).
65 $ref: /schemas/types.yaml#definitions/string
73 description: Preferred power role.
74 $ref: /schemas/types.yaml#definitions/string
82 description: Data role if Type C connector supports USB data. "dual" refers
83 Dual Role Device (DRD).
84 $ref: /schemas/types.yaml#definitions/string
91 # The following are optional properties for "usb-c-connector" with power
94 description: An array of u32 with each entry providing supported power
95 source data object(PDO), the detailed bit definitions of PDO can be found
96 in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.2
97 Source_Capabilities Message, the order of each entry(PDO) should follow
98 the PD spec chapter 6.4.1. Required for power source and power dual role.
99 User can specify the source PDO array via PDO_FIXED/BATT/VAR/PPS_APDO()
100 defined in dt-bindings/usb/pd.h.
103 $ref: /schemas/types.yaml#/definitions/uint32-array
106 description: An array of u32 with each entry providing supported power sink
107 data object(PDO), the detailed bit definitions of PDO can be found in
108 "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.3
109 Sink Capabilities Message, the order of each entry(PDO) should follow the
110 PD spec chapter 6.4.1. Required for power sink and power dual role. User
111 can specify the sink PDO array via PDO_FIXED/BATT/VAR/PPS_APDO() defined
112 in dt-bindings/usb/pd.h.
115 $ref: /schemas/types.yaml#/definitions/uint32-array
118 description: Sink required operating power in microwatt, if source can't
119 offer the power, Capability Mismatch is set. Required for power sink and
123 description: OF graph bindings (specified in bindings/graph.txt) that model
124 any data bus to the connector unless the bus is between parent node and
125 the connector. Since a single connector can have multiple data buses every
126 bus has an assigned OF graph port number as described below.
131 description: High Speed (HS), present in all connectors.
135 description: Super Speed (SS), present in SS capable connectors.
139 description: Sideband Use (SBU), present in USB-C. This describes the
140 alternate mode connection of which SBU is a part.
153 const: gpio-usb-b-connector
162 # Micro-USB connector with HS lines routed via controller (MUIC).
165 usb_con1: connector {
166 compatible = "usb-b-connector";
172 # USB-C connector attached to CC controller (s2mm005), HS lines routed
173 # to companion PMIC (max77865), SS lines to USB3 PHY and SBU to DisplayPort.
174 # DisplayPort video lines are routed to the connector via SS mux in USB3 PHY.
177 usb_con2: connector {
178 compatible = "usb-c-connector";
182 #address-cells = <1>;
187 usb_con_hs: endpoint {
188 remote-endpoint = <&max77865_usbc_hs>;
193 usb_con_ss: endpoint {
194 remote-endpoint = <&usbdrd_phy_ss>;
199 usb_con_sbu: endpoint {
200 remote-endpoint = <&dp_aux>;
207 # USB-C connector attached to a typec port controller(ptn5110), which has
208 # power delivery support and enables drp.
210 #include <dt-bindings/usb/pd.h>
212 usb_con3: connector {
213 compatible = "usb-c-connector";
216 try-power-role = "sink";
217 source-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)>;
218 sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)
219 PDO_VAR(5000, 12000, 2000)>;
220 op-sink-microwatt = <10000000>;
224 # USB connector with GPIO control lines
226 #include <dt-bindings/gpio/gpio.h>
230 compatible = "gpio-usb-b-connector", "usb-b-connector";
232 id-gpios = <&pio 12 GPIO_ACTIVE_HIGH>;
233 vbus-supply = <&usb_p0_vbus>;