On Thu, 22 Sep 2011, Iain Barker wrote: > Hi all, > > Is it possible to limit the maximum speed at which a USB 2.0 HUB will connect to USB devices? > e.g. to make USB 2 devices connect at FULL_SPEED instead of HIGH_SPEED The only way to do this is to force the hub itself to connect at full speed. There's no way to tell a hub to degrade just one of its ports. If the hub is plugged directly into an EHCI controller and there's no companion USB-1.1 controller (as is the case with Intel's "rate-matching" hubs), there's no way to do it at all. > The reason is that I'm using usb-storage and getting unexpected disconnects from the hcd. > From reading other similar reports I suspect an EMI / power / noise problem on the bus. > > So I would like to de-rate the bus to run at FULL_SPEED instead of HIGH_SPEED, to see if that helps. > > Here's an example: > > ehci_hcd 0000:00:1a.0: fatal error > ehci_hcd 0000:00:1a.0: force halt; handhake f8472024 00004000 00004000 -> -110 > ehci_hcd 0000:00:1a.0: HC died; cleaning up > usb 2-1: USB disconnect, address 2 > usb 2-1.3: USB disconnect, address 3 Oddly enough, this error message has nothing to do with usb-storage. It refers to the periodic schedule, which is used for things like hubs, input devices, audio & video, etc. > HP Proliant DL120 G7 with ATP industrial-grade USB 2.0 storage modules > hcd is connected to a hub on the motherboard, nothing is external (no cables etc). Can you build a kernel with CONFIG_USB_DEBUG enabled and post the dmesg log from a failure? Include more of the context; if noise is an issue there should be a lot of debugging messages complaining about it. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html