USB 1.1 automatic fallback if 2.0 fails

Pär Lidén par.liden at
Sun Dec 30 13:59:44 UTC 2007

Clarification: If this feature isn't already in the works, it is certainly
nothing for Hardy, but it may be appropriate for Ubuntu 8.10 maybe.


2007/12/30, Pär Lidén <par.liden at>:
> My idea is that if a USB device gets plugged in, and Linux isn't able to
> initialize it properly at usb 2.0, it should try initializing it with
> usb 1.1 instead.
> The rationale is that you could have a situation where usb 1.1 works, but
> not 2.0. I have a problem where some of my usb-ports (the front ports)
> work only
> at usb 1.1 speeds. If I plug in lower speed devices, such as my
> keyboard, it works perfectly from the front ports. But when i connect
> higher speed devices, such as usb-sticks, or my digital camera, it won't
> work. It just fails silently. However, if I remove the usb 2.0 support
> from the kernel (unloading that module, ie sudo rmmod ehci-hcd), and
> then insert the usb-stick after that, it works, but only at usb 1.1
> speeds of course.
> So I think it would be quite nice if Ubuntu could do this:
> When a usb 2.0 device  device gets connected on a 2.0 capable port (ie one
> that is connected to an ehci controller), it should of course first try to
> init it with usb 2.0 (ehci). If that doesn't work, try with usb 1.1(uhci/ohci), and preferably put up some message to the user that the device
> is not working at full 2.0 speed. (This is what win xp does.) I think that
> a lot of users gets confused when their devices just silently fails at some
> ports of their computer. And if initializing it with uhci/ohci doesn't work
> either, then pop up some error message then also of course.
> I don't know if this is hard to implement, I'm no kernel hacker. I
> suppose that the fallback itself would be implemented purely in the
> kernel (thats why I reported this against linux-source), but bringing
> forth the message to the user would require probably  involving at least
> udev and HAL also.
> I'm pretty sure the cause for me is that the internal cabling to the front
> ports is bad. The two front usb ports are connected via one cable to a
> 10-pin connector on the motherboard. The back ports, which connect
> directly to he motherboard, work perfectly.
> I've looked at bug #88746, which describes the same symptoms, and the
> same solution (unloading ehci-hcd). However, in my case, I don't think
> Linux or the motherboard is to blame, but just the cables, as it works
> in winxp (but at 1.1 speeds). Implementing this feature would certainly
> help those
> people affected by bug #88746, and not computer-savvy enough to unload
> ehci-hcd. This feature would then provide a (ugly?) workaround for them
> that at
> least enables them to use their devices (albeit at low speeds).
> Does anyone have any comments, or know if this is hard to implement, or
> something else? I appreciate any comments.
> /Pär
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Ubuntu-devel-discuss mailing list