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 Device Tree Bindings
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]
33 Tells OTG controllers we want to disable OTG HNP. Normally HNP is the
34 basic function of real OTG except you want it to be a srp-capable only B
40 Tells OTG controllers we want to disable OTG SRP. SRP is optional for OTG
46 Tells OTG controllers we want to disable OTG ADP. ADP is optional for OTG
52 Indicates that the device is capable of assigning the USB data role
53 (USB host or USB device) for a given USB connector, such as Type-C,
54 Type-B(micro). See connector/usb-connector.yaml.
56 role-switch-default-mode:
58 Indicates if usb-role-switch is enabled, the device default operation
59 mode of controller while usb role is USB_ROLE_NONE.
60 $ref: /schemas/types.yaml#/definitions/string
61 enum: [host, peripheral]
64 additionalProperties: true
69 compatible = "snps,dwc3";
70 reg = <0x4a030000 0xcfff>;
71 interrupts = <0 92 4>;
72 usb-phy = <&usb2_phy>, <&usb3_phy>;
73 maximum-speed = "super-speed";
75 phy_type = "utmi_wide";