USB3.0 device is being recognized as a USB2 device

Options
John
John New Member Posts: 4
edited October 2016 in UP Board Linux
When I plug a usb 3.0 flash drive or a usb3.0 hub to UP Board through a USB3.0 OTG adapter, it is always recognized as a USB2 device (e.g. when typing lsusb -t, it's always sitting under "Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M" instead of "Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M". I have tried on both 4.4 and 4.2 upboard kernel. (Definitely using upboard kernel by verifying through uname -r).

When I plug these devices onto my PC instead, it looks fine sitting perfectly under "Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M".

Any suggestion? (or maybe my OTG cable is just rated for USB2 instead even it has the blue colored thing on the plug).

Extra:
I also had no luck with realsene through OTG adapter, but at least other USB storage device and hub still work. (Still waiting for my USB3.0 micro B Male to micro B male cable to arrive).

Comments

  • Toralv B
    Toralv B New Member Posts: 2
    Options
    Looks like there still are issues with the USB 3.0 port.

    https://up-community.org/forum/public-otheros/290-usb-3-0-otg-not-switching-to-superspeed
    David wrote:
    Hi there,
    i have a Problem with the USB 3.0 Port (i have a 3.0 OTG Cable to provide me with a Type A connector).
    For testing, i plugged in an usb hard drive with 3.0 support.
    Because i use gentoo, my kernel is hand made. I have support for xHCI compiled in.
    When i connect the HDD everything works, but the device only goes up to 480M (high-speed, USB 2.0) and not 5000M (super-speed, USB 3.0). Have i something not compiled into the kernel which is needed? Usually this setup works fine, but i always tried only boards with real USB 3.0 and not OTG.

    Here is the output from dmesg:
    [    2.954773] ACPI: bus type USB registered
    [    2.954853] usbcore: registered new interface driver usbfs
    [    2.954881] usbcore: registered new interface driver hub
    [    2.954925] usbcore: registered new device driver usb
    [    2.963822] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus number 1
    [    2.965449] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [    2.965456] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    2.965460] usb usb1: Product: xHCI Host Controller
    [    2.965464] usb usb1: Manufacturer: Linux 4.4.6-gentoo xhci-hcd
    [    2.965467] usb usb1: SerialNumber: 0000:00:14.0
    [    2.965822] hub 1-0:1.0: USB hub found
    [    2.966444] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus number 2
    [    2.966957] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
    [    2.966963] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [    2.966967] usb usb2: Product: xHCI Host Controller
    [    2.966971] usb usb2: Manufacturer: Linux 4.4.6-gentoo xhci-hcd
    [    2.966975] usb usb2: SerialNumber: 0000:00:14.0
    [    2.967371] hub 2-0:1.0: USB hub found
    [    3.318392] usb 1-1: new high-speed USB device number 2 using xhci_hcd
    [    3.488082] usb 1-1: New USB device found, idVendor=174c, idProduct=55aa
    [    3.488182] usb 1-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
    [    3.488190] usb 1-1: Product: USB 3.0 device
    [    3.488237] usb 1-1: Manufacturer: Intenso
    [    3.488242] usb 1-1: SerialNumber: 90900000000000003214
    

    and here is the output of "lsusb -t"
    up ~ # lsusb -t
    /:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
    /:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/7p, 480M
        |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=uas, 480M
    

    and here is the verbose output of the device:
    Bus 001 Device 002: ID 174c:55aa ASMedia Technology Inc. ASM1051 SATA 3Gb/s bridge
    Device Descriptor:
      bLength                18
      bDescriptorType         1
      bcdUSB               2.10
      bDeviceClass            0 
      bDeviceSubClass         0 
      bDeviceProtocol         0 
      bMaxPacketSize0        64
      idVendor           0x174c ASMedia Technology Inc.
      idProduct          0x55aa ASM1051 SATA 3Gb/s bridge
      bcdDevice            1.00
      iManufacturer           2 Intenso
      iProduct                3 USB 3.0 device
      iSerial                 1 90900000000000003214
      bNumConfigurations      1
      Configuration Descriptor:
        bLength                 9
        bDescriptorType         2
        wTotalLength           85
        bNumInterfaces          1
        bConfigurationValue     1
        iConfiguration          0 
        bmAttributes         0xc0
          Self Powered
        MaxPower                0mA
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        0
          bAlternateSetting       0
          bNumEndpoints           2
          bInterfaceClass         8 Mass Storage
          bInterfaceSubClass      6 SCSI
          bInterfaceProtocol     80 Bulk-Only
          iInterface              0 
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x81  EP 1 IN
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0200  1x 512 bytes
            bInterval               0
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x02  EP 2 OUT
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0200  1x 512 bytes
            bInterval               0
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        0
          bAlternateSetting       1
          bNumEndpoints           4
          bInterfaceClass         8 Mass Storage
          bInterfaceSubClass      6 SCSI
          bInterfaceProtocol     98 
          iInterface              0 
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x81  EP 1 IN
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0200  1x 512 bytes
            bInterval               0
            Data-in pipe (0x03)
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x02  EP 2 OUT
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0200  1x 512 bytes
            bInterval               0
            Data-out pipe (0x04)
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x83  EP 3 IN
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0200  1x 512 bytes
            bInterval               0
            Status pipe (0x02)
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x04  EP 4 OUT
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0200  1x 512 bytes
            bInterval               0
            Command pipe (0x01)
    Binary Object Store Descriptor:
      bLength                 5
      bDescriptorType        15
      wTotalLength           22
      bNumDeviceCaps          2
      USB 2.0 Extension Device Capability:
        bLength                 7
        bDescriptorType        16
        bDevCapabilityType      2
        bmAttributes   0x0000f41e
          BESL Link Power Management (LPM) Supported
        BESL value     1024 us 
        Deep BESL value    61440 us 
      SuperSpeed USB Device Capability:
        bLength                10
        bDescriptorType        16
        bDevCapabilityType      3
        bmAttributes         0x00
        wSpeedsSupported   0x000e
          Device can operate at Full Speed (12Mbps)
          Device can operate at High Speed (480Mbps)
          Device can operate at SuperSpeed (5Gbps)
        bFunctionalitySupport   1
          Lowest fully-functional device speed is Full Speed (12Mbps)
        bU1DevExitLat          10 micro seconds
        bU2DevExitLat        2047 micro seconds
    can't get debug descriptor: Resource temporarily unavailable
    Device Status:     0x0001
      Self Powered
    

    as you can see, the device really supports super-speed

    (Device can operate at SuperSpeed (5Gbps))

    Any advice?