1Binding for the Cadence USBSS-DRD controller 2 3Required properties: 4 - reg: Physical base address and size of the controller's register areas. 5 Controller has 3 different regions: 6 - HOST registers area 7 - DEVICE registers area 8 - OTG/DRD registers area 9 - reg-names - register memory area names: 10 "xhci" - for HOST registers space 11 "dev" - for DEVICE registers space 12 "otg" - for OTG/DRD registers space 13 - compatible: Should contain: "cdns,usb3" 14 - interrupts: Interrupts used by cdns3 controller: 15 "host" - interrupt used by XHCI driver. 16 "peripheral" - interrupt used by device driver 17 "otg" - interrupt used by DRD/OTG part of driver 18 19Optional properties: 20 - maximum-speed : valid arguments are "super-speed", "high-speed" and 21 "full-speed"; refer to usb/generic.txt 22 - dr_mode: Should be one of "host", "peripheral" or "otg". 23 - phys: reference to the USB PHY 24 - phy-names: from the *Generic PHY* bindings; 25 Supported names are: 26 - cdns3,usb2-phy 27 - cdns3,usb3-phy 28 29 - cdns,on-chip-buff-size : size of memory intended as internal memory for endpoints 30 buffers expressed in KB 31 32Example: 33 usb@f3000000 { 34 compatible = "cdns,usb3"; 35 interrupts = <GIC_USB_IRQ 7 IRQ_TYPE_LEVEL_HIGH>, 36 <GIC_USB_IRQ 7 IRQ_TYPE_LEVEL_HIGH>, 37 <GIC_USB_IRQ 8 IRQ_TYPE_LEVEL_HIGH>; 38 interrupt-names = "host", "peripheral", "otg"; 39 reg = <0xf3000000 0x10000>, /* memory area for HOST registers */ 40 <0xf3010000 0x10000>, /* memory area for DEVICE registers */ 41 <0xf3020000 0x10000>; /* memory area for OTG/DRD registers */ 42 reg-names = "xhci", "dev", "otg"; 43 phys = <&usb2_phy>, <&usb3_phy>; 44 phy-names = "cdns3,usb2-phy", "cnds3,usb3-phy"; 45 }; 46