TI Keystone Soc USB Controller DWC3 GLUE Required properties: - compatible: should be "ti,keystone-dwc3" for Keystone 2 SoCs "ti,am654-dwc3" for AM654 SoC - #address-cells, #size-cells : should be '1' if the device has sub-nodes with 'reg' property. - reg : Address and length of the register set for the USB subsystem on the SOC. - interrupts : The irq number of this device that is used to interrupt the MPU. - ranges: allows valid 1:1 translation between child's address space and parent's address space. SoC-specific Required Properties: The following are mandatory properties for Keystone 2 66AK2HK, 66AK2L and 66AK2E SoCs only: - clocks: Clock ID for USB functional clock. - clock-names: Must be "usb". The following are mandatory properties for 66AK2G and AM654: - power-domains: Should contain a phandle to a PM domain provider node and an args specifier containing the USB device id value. This property is as per the binding, Documentation/devicetree/bindings/soc/ti/sci-pm-domain.txt Sub-nodes: The dwc3 core should be added as subnode to Keystone DWC3 glue. - dwc3 : The binding details of dwc3 can be found in: Documentation/devicetree/bindings/usb/dwc3.txt Example: usb: usb@2680000 { compatible = "ti,keystone-dwc3"; #address-cells = <1>; #size-cells = <1>; reg = <0x2680000 0x10000>; clocks = <&clkusb>; clock-names = "usb"; interrupts = ; ranges; dwc3@2690000 { compatible = "synopsys,dwc3"; reg = <0x2690000 0x70000>; interrupts = ; usb-phy = <&usb_phy>, <&usb_phy>; }; };