USB Power and devices

Hi all, I'm new to the forum, hope you're all doing well.
Recently dropped Win 10 for Linux for development reasons.
I had issues installing Zorin 16 from a brand new USB stick.
Kept getting Descriptor Error Read/64, -32 until I turned on IOMMU in my bios.

After several attempts I managed to get the system installed.
However I have issues with USB still. Devices only seems to be able to connect on the motherboards USB 2.0 ports, and no connectivity on USB 3.0.

My Wifi dongle loses power randomly, I have disabled power savings for the Wifi on the power settings, but still get random disconnect. I've noticed the mouse, keyboard and a USB flash drive also loses power on it at random.

How can I check power usage, get correct drivers and tweak the OS to better match my hardware?

What hardware are you using? Make and model of computer?
You can usually gain information on USB ports with

lsusb

terminal command

1 Like

Old Gigabyte FX970 motherboard, with AMD FX chipset.
lspci output is:

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD9x0/RX980 Host Bridge (rev 02)
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD/ATI] RD890S/RD990 I/O Memory Management Unit (IOMMU)
00:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD9x0/RX980 PCI to PCI bridge (PCI Express GFX port 0)
00:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD9x0/RX980 PCI to PCI bridge (PCI Express GPP Port 0)
00:09.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD9x0/RX980 PCI to PCI bridge (PCI Express GPP Port 4)
00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (rev 40)
00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 SMBus Controller (rev 42)
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 Azalia (Intel HDA) (rev 40)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller (rev 40)
00:14.4 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 PCI to PCI Bridge (rev 40)
00:14.5 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI2 Controller
00:16.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller
00:16.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 5
01:00.0 VGA compatible controller: NVIDIA Corporation GP107 [GeForce GTX 1050 Ti] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GP107GL High Definition Audio Controller (rev a1)
02:00.0 USB controller: VIA Technologies, Inc. VL805 USB 3.0 Host Controller (rev 01)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 0c)

lsusb output is:

Bus 003 Device 004: ID 0bda:818b Realtek Semiconductor Corp. RTL8192EU 802.11b/g/n WLAN Adapter
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 003: ID 2516:0042 Cooler Master Co., Ltd. MasterKeys Lite L Combo Keyboard(KB)
Bus 004 Device 002: ID 093a:2532 Pixart Imaging, Inc. Gaming Mouse
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

I've disabled power management on the wifi dongle which seems to keep it from disconnecting.

1 Like

Hmmm... and you had to enable IOMMU in BIOS?
Have you tried adding iommu=soft to your Grub?

sudo nano /etc/default/grub

Arrow key down to GRUB_CMDLINE_LINUX="quiet splash" and add the above parameter so that it is:
GRUB_CMDLINE_LINUX="quiet splash iommu=soft"
Tap ctrl+x to exit, then the y key to say yes, then the enter key to save and exit.
The terminal will revert to normal. You now must run

sudo update-grub

in order for the changes to take effect. Reboot and test...

1 Like

The USB seems to be stable from what I can tell. The caveat is that I need to unplug then plug the wifi dongle back in for it to join the network, otherwise it just spins on the wifi menu.

I'm also not sure why enabling IOMMU would stabilise the USB ports enough to get the OS installed in the first place. From my understanding this feature is for device memory management usually for pass-through in virtualisation cases, I may be incorrect.

From what I've found online it seems the USB issue is with older Gigabyte motherboards, so maybe there needs to be a fix on the kernel. The other option seems to be a BIOS update which won't help as my BIOS is already on the last released version.

Thank you for the support Aravisian. :+1:t2: