I have an old PC with what appears to be a broken implementation of USB. I cannot obtain a BIOS update and there is no BIOS setting to switch off USB either. Very old Linux distributions would run on this PC, but only on those with USB support as loadable modules. For later kernels with direct USB support I would get continuous error messages to the console.
After spending some time Googling, I found this useful post
For Ubuntu 10.04 LTS I used the advice to create rules to deactivate USB entirely on this host. The first file that I created was /etc/udev/rules.d/20-disable-ehci.rules which contained the following code:-
ACTION=="add", SUBSYSTEM=="pci", DRIVER=="ehci_hcd", \ RUN+="/bin/sh -c 'echo -n %k > %S%p/driver/unbind'"
When I rebooted the PC, it disabled one of the troublesome USB hubs but I was still getting error messages for another but much more frequently now. I experimented by creating a similar file to deactivate ohci but this didn’t do anything. I tried again with uhci and that worked, USB completely disabled.
/etc/udev/rules.d/30-disable-uhci.rules
ACTION=="add", SUBSYSTEM=="pci", DRIVER=="uhci_hcd", \ RUN+="/bin/sh -c 'echo -n %k > %S%p/driver/unbind'"
So if you have two or more USB hubs throwing enumeration errors, try disabling both EHCI and UHCI, it worked for me.
Obviously, if you have any USB devices that you need to use with this host, forget it. You will need a new motherboard.