On 17/06/2019 10:13, Felipe Balbi wrote: > > Hi, > > Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> writes: >> Hello, >> >> I'm trying to upstream Designware USB3 host driver present in the Actions >> Semi S900 SoC. It can successfully detect the USB hub but when any of the >> USB device got plugged in, it fails with following error: >> >> [ 4.365566] usb usb1-port1: connect-debounce failed >> >> Full log can be found here: https://pastebin.ubuntu.com/p/PNff5fZkn6/ >> >> Below is the output of, lsusb -v: >> >> Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub >> Device Descriptor: >> bLength 18 >> bDescriptorType 1 >> bcdUSB 3.00 >> bDeviceClass 9 Hub >> bDeviceSubClass 0 Unused >> bDeviceProtocol 3 >> bMaxPacketSize0 9 >> idVendor 0x1d6b Linux Foundation >> idProduct 0x0003 3.0 root hub >> bcdDevice 5.02 >> iManufacturer 3 Linux 5.2.0-rc3-00032-gbd970cfc7a82-dirty xhci-hcd >> iProduct 2 xHCI Host Controller >> iSerial 1 xhci-hcd.0.auto >> bNumConfigurations 1 >> Configuration Descriptor: >> bLength 9 >> bDescriptorType 2 >> wTotalLength 31 >> bNumInterfaces 1 >> bConfigurationValue 1 >> iConfiguration 0 >> bmAttributes 0xe0 >> Self Powered >> Remote Wakeup >> MaxPower 0mA >> Interface Descriptor: >> bLength 9 >> bDescriptorType 4 >> bInterfaceNumber 0 >> bAlternateSetting 0 >> bNumEndpoints 1 >> bInterfaceClass 9 Hub >> bInterfaceSubClass 0 Unused >> bInterfaceProtocol 0 Full speed (or root) hub >> iInterface 0 >> Endpoint Descriptor: >> bLength 7 >> bDescriptorType 5 >> bEndpointAddress 0x81 EP 1 IN >> bmAttributes 3 >> Transfer Type Interrupt >> Synch Type None >> Usage Type Data >> wMaxPacketSize 0x0004 1x 4 bytes >> bInterval 12 >> bMaxBurst 0 >> Hub Descriptor: >> bLength 12 >> bDescriptorType 42 >> nNbrPorts 1 >> wHubCharacteristic 0x000a >> No power switching (usb 1.0) >> Per-port overcurrent protection >> bPwrOn2PwrGood 10 * 2 milli seconds >> bHubContrCurrent 0 milli Ampere >> bHubDecLat 0.0 micro seconds >> wHubDelay 0 nano seconds >> DeviceRemovable 0x00 >> Hub Port Status: >> Port 1: 0000.02a0 5Gbps power Rx.Detect >> Binary Object Store Descriptor: >> bLength 5 >> bDescriptorType 15 >> wTotalLength 15 >> bNumDeviceCaps 1 >> SuperSpeed USB Device Capability: >> bLength 10 >> bDescriptorType 16 >> bDevCapabilityType 3 >> bmAttributes 0x02 >> Latency Tolerance Messages (LTM) Supported >> wSpeedsSupported 0x0008 >> Device can operate at SuperSpeed (5Gbps) >> bFunctionalitySupport 3 >> Lowest fully-functional device speed is SuperSpeed (5Gbps) >> bU1DevExitLat 0 micro seconds >> bU2DevExitLat 0 micro seconds >> Device Status: 0x0001 >> Self Powered >> >> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub >> >> Devicetree snippet: >> >> usbdrd3_0: usb@e0400000 { >> compatible = "actions,s900-dwc3"; >> clocks = <&cmu CLK_USB3_480MPLL0>, >> <&cmu CLK_USB3_480MPHY0>, >> <&cmu CLK_USB3_5GPHY>, >> <&cmu CLK_USB3_CCE>, >> <&cmu CLK_USB3_MAC>; >> clock-names = "usb3_480mpll0", "usb3_480mphy0", >> "usb3_5gphy", "usb3_cce", >> "usb3_mac"; >> resets = <&cmu RESET_USB3>; >> reset-names = "usb3"; >> power-domains = <&sps S900_PD_USB3>; >> #address-cells = <2>; >> #size-cells = <2>; >> ranges; >> >> usbdrd_dwc3_0: dwc3 { >> compatible = "snps,dwc3"; >> reg = <0x0 0xe0400000 0x0 0x100000>; >> interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; >> usb-phy = <&usb2_phy>, <&usb3_phy>; >> dr_mode = "host"; >> power-domains = <&sps S900_PD_USB3>; >> snps,hsphy_interface = "utmi"; >> }; >> }; >> >> After going through the mailing list looking for similar issue, found that >> some host controllers works with following quirk: >> >> snps,dis_u3_susphy_quirk; >> >> I tried that also but it didn't work. Can anyone shed some light on this? >> >> PS: USB3 is working fine with vendor kernel 3.10. > > Check what's different between mainline and your v3.10 code. Specially > look for changes in xhci and usbcore. This kind of error usually happen when the PHY is not working correctly. I would check that all USB analog power supplies are enabled, PHY is clocked and powered ON. Good luck! -- cheers, -roger Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki