5

As the title says, my system doesn't seem to recognize my USB 3.0. It instead claims to be a 2.0. Any help would be appreciated!

My computer is the Asus Q200E. It's pretty bad, but it works for school. Except for this damn usb 3.0 port

    lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
    |__ Port 2: Dev 25, If 0, Class=Human Interface Device, Driver=usbhid, 480M
    |__ Port 3: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 3: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 3: Dev 2, If 2, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 2: Dev 14, If 0, Class=Video, Driver=uvcvideo, 480M
        |__ Port 2: Dev 14, If 1, Class=Video, Driver=uvcvideo, 480M
        |__ Port 3: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 3: Dev 4, If 1, Class=Human Interface Device, Driver=usbhid, 12M

pic from hardinfo (highlighted part is what's connected to the supposed 3.0 port)

proof port and usb a are both 3.0 compatible

Terrance
  • 41,612
  • 7
  • 124
  • 183
J-Lit
  • 51
  • Can you edit your question and copy and paste the output of sudo lsusb -t from a terminal window? – Terrance May 03 '18 at 04:57
  • 2
    Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M is USB 3.0. The 5000M means 5GHz for the speed. To obtain those speeds you need to plug in an actual device that is USB 3.0. Plugging in a USB 2.0 device into a 3.0 port will slow down to the 480Mb of USB 2.0. – Terrance May 03 '18 at 05:26
  • Hmm weird, I geuss I thought my device was USB 3.0 compatible, but I can't find anywhere that says it is. My mistake, thanks for the info! – J-Lit May 03 '18 at 05:37
  • 1
    My bad, that's supposed to be 5Gb not 5GHz. Anyway, you can run that lsusb command again with your device plugged in and see. – Terrance May 03 '18 at 05:40

2 Answers2

1

Hi the following procedures will fix your problem right away.

  1. Open terminal
  2. Backup your grub config by entering sudo cp /etc/default/grub /etc/default/grub.backup (note: this is the location of the grub config in recent Ubuntu versions, the location of your file may differ based on distro and version)
  3. Open your grub file: sudo nano /etc/default/grub
  4. Find the line that begins with GRUB_CMDLINE_LINUX_DEFAULT and add iommu=soft after "quiet splash" and before the quotation mark "quiet splash iommu=soft".
  5. Save the file by hitting Ctrl-O and then exit with Ctrl-X
  6. Enter update-grub in terminal and hit enter to update your grub.cfg
  7. Restart your machine to let the changes take place.
  • 2
    Would you go into a bit more detailed explanation on how adding iommu=soft would solve the problem? – Meki Dec 22 '18 at 19:37
  • The iommu=soft parameter instructs the Linux kernel to use a software-based Input/Output Memory Management Unit (IOMMU) instead of the hardware-based one. This is useful for resolving compatibility or performance issues with devices like USB controllers or graphics cards that require direct memory access (DMA), especially in systems with hardware virtualization challenges. – bteo Dec 31 '23 at 02:01
0

Crazy suggestion: check your cable. It might be that your USB cable can't handle gbps and so everything is negotiating to 480mbps of USB2.

It's normal/standard for the XHCI driver to expose both a USB 2 hub and a USB 3 hub in lsusb. You have both - the 5000M entry is USB 3. When you plug something in, it will appear under one or the other hub, depending on how fast it is. So it looks like maybe your linux system is all good, but you haven't successfully plugged in a USB 3 capable system (device+cable) yet.

Leopd
  • 583