On Mon, 15 May 2006, Daniel Drake wrote: > Hi, > > Several Gentoo users are reporting that usb-storage devices no longer > work on 2.6.16 with unpowered hubs. > > Here's some logs: > > hub 2-2:1.0: state 7 ports 3 chg 0000 evt 0002 > hub 2-2:1.0: port 1, status 0101, change 0001, 12 Mb/s > hub 2-2:1.0: debounce: port 1: total 100ms stable 100ms status 0x101 > usb 2-2.1: new full speed USB device using uhci_hcd and address 7 > usb 2-2.1: not running at top speed; connect to a high speed hub > usb 2-2.1: default language 0x0409 > usb 2-2.1: new device strings: Mfr=1, Product=2, SerialNumber=3 > usb 2-2.1: Product: Store 'n' Go > usb 2-2.1: Manufacturer: Verbatim > usb 2-2.1: SerialNumber: 0CD177515381390D > usb 2-2.1: uevent > usb 2-2.1: device is bus-powered > usb 2-2.1: no configuration chosen from 1 choice > drivers/usb/core/inode.c: creating file '007' > hub 2-2:1.0: 100mA power budget left > hub 2-2:1.0: state 7 ports 3 chg 0000 evt 0002 > > This device works in the same hub in 2.6.15, and works when plugged > directly into a USB port on both 2.6.15 and 2.6.16. The problem has been > reproduced on 2.6.17-rc4. > > I'm working on getting a complete report filed at the kernel bugzilla, > but thought I would throw some attention to it here first, is it a known > issue? > > The Gentoo bug report is at > https://bugs.gentoo.org/show_bug.cgi?id=132721 > but it's a bit of a mess..
A couple of other people have made similar reports. It's not really a regression; it is correct behavior that was not implemented until 2.6.16. The idea is that the kernel now keeps track of USB power budgets. When a bus-powered device requires more current than its upstream hub is capable of providing, the kernel will not configure it. Computers' USB ports are capable of providing a full 500 mA, so devices plugged directly into the computer will work okay. However unpowered hubs can provide only 100 mA to each port. Some devices require (or claim they require) more current than that. As a result, they don't get configured when plugged into an unpowered hub. There are several possible ways to deal with this. The device can be plugged directly into the computer instead of into the hub. The unpowered hub can be replaced with a powered hub. Or, if the users don't mind living a little dangerously, they can configure the devices manually. As root, do something like this: echo -n 1 >/sys/bus/usb/devices/2-2.1/bConfigurationValue The "2-2.1" must be replaced with the correct path to the USB device, and the "1" must be replaced with the correct configuration value (which can be found in the output from "lsusb -v", along with the device's power requirement). Alan Stern ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel