1 # SPDX-License-Identifier: GPL-2.0
4 $id: http://devicetree.org/schemas/usb/usb-drd.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Generic USB OTG Controller
10 - Greg Kroah-Hartman <gregkh@linuxfoundation.org>
15 Tells usb driver the release number of the OTG and EH supplement with
16 which the device and its descriptors are compliant, in binary-coded
17 decimal (i.e. 2.0 is 0200H). This property is used if any real OTG
18 features (HNP/SRP/ADP) is enabled. If ADP is required, otg-rev should be
20 $ref: /schemas/types.yaml#/definitions/uint32
21 enum: [0x0100, 0x0120, 0x0130, 0x0200]
25 Tells Dual-Role USB controllers that we want to work on a particular
26 mode. In case this attribute isn't passed via DT, USB DRD controllers
27 should default to OTG.
28 $ref: /schemas/types.yaml#/definitions/string
29 enum: [host, peripheral, otg]
34 Tells OTG controllers we want to disable OTG HNP. Normally HNP is the
35 basic function of real OTG except you want it to be a srp-capable only B
41 Tells OTG controllers we want to disable OTG SRP. SRP is optional for OTG
47 Tells OTG controllers we want to disable OTG ADP. ADP is optional for OTG
53 Indicates that the device is capable of assigning the USB data role
54 (USB host or USB device) for a given USB connector, such as Type-C,
55 Type-B(micro). See connector/usb-connector.yaml.
57 role-switch-default-mode:
59 Indicates if usb-role-switch is enabled, the device default operation
60 mode of controller while usb role is USB_ROLE_NONE.
61 $ref: /schemas/types.yaml#/definitions/string
62 enum: [host, peripheral]
65 additionalProperties: true
70 compatible = "snps,dwc3";
71 reg = <0x4a030000 0xcfff>;
72 interrupts = <0 92 4>;
73 usb-phy = <&usb2_phy>, <&usb3_phy>;
74 maximum-speed = "super-speed";
76 phy_type = "utmi_wide";