Bug 5835
Summary: | High Speed USB devices don't work when ehci_hcd loaded, work if removed | ||
---|---|---|---|
Product: | Drivers | Reporter: | Wesley J. Landaker (wjl) |
Component: | USB | Assignee: | David Brownell (dbrownell) |
Status: | REJECTED INSUFFICIENT_DATA | ||
Severity: | normal | CC: | bunk, cw, diegobz, greg, jch, protasnb, rick4711, stefan+kernel, stern, tjarls |
Priority: | P2 | ||
Hardware: | i386 | ||
OS: | Linux | ||
Kernel Version: | 2.6.16 | Subsystem: | |
Regression: | --- | Bisected commit-id: | |
Bug Depends on: | |||
Bug Blocks: | 5089 | ||
Attachments: |
Modules loaded
lspci Info lspci verbose lsusb information lsusb verbose Info dmesg Information 2.6.17-rc0-git13-x86_64 dmesg experimental 2.6.17-rc3 SET_ADDRESS patch refreshed ehci unlink patch Try to fix EHCI speed detection Dmesg output with CONFIG_PRINTK enabled usbmon2.log usbmon.log usbmon_ok.log |
Description
Wesley J. Landaker
2006-01-05 10:05:06 UTC
When you report that this failure occurs with other high-speed devices, does that include non-storage devices? > When you report that this failure occurs with other high-speed devices,
> does that include non-storage devices?
I'm afraid I only have storage devices that support high-speed USB: 2
high-speed USB Flash units and a high-speed USB HD enclosure.
Other (working) connected devices include a Handspring Visor, an APC UPS, and a
older Canon digital camera, but it doesn't appear that any of these are
high-speed devices, sorry.
What is the contents of /proc/bus/usb/devices and output from lsmod when you have the device attached and ehci_hcd loaded (i.e. the failure case)? Okay, here it is, with ehci_hcd loaded, and then immediately after unloading it. Plugged in is just my APC UPS and a Sandisk USB flash drive. # modprobe ehci_hcd # cat /proc/bus/usb/devices T: Bus=05 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 8 B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 ehci_hcd S: Product=EHCI Host Controller S: SerialNumber=0000:00:10.4 C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=256ms T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:10.3 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:10.2 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc=106/900 us (12%), #Int= 1, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:10.1 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=051d ProdID=0002 Rev= 1.06 S: Manufacturer=APC S: Product=Back-UPS ES 725 FW:802.n2.D USB FW:n2 S: SerialNumber=QB0348242412 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 2mA I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid E: Ad=81(I) Atr=03(Int.) MxPS= 6 Ivl=10ms T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:10.0 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms # lsusb Bus 004 Device 001: ID 0000:0000 Bus 002 Device 003: ID 051d:0002 American Power Conversion Back-UPS Pro 500/1000/1500 Bus 002 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 005 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 # modprobe -r ehci_hcd # cat /proc/bus/usb/devices T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:10.3 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:10.2 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0781 ProdID=5150 Rev= 0.20 S: Manufacturer=SanDisk Corporation S: Product=Cruzer Mini S: SerialNumber=SNDK7CB1E51B59806804 C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=200mA I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc=106/900 us (12%), #Int= 1, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:10.1 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=051d ProdID=0002 Rev= 1.06 S: Manufacturer=APC S: Product=Back-UPS ES 725 FW:802.n2.D USB FW:n2 S: SerialNumber=QB0348242412 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 2mA I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid E: Ad=81(I) Atr=03(Int.) MxPS= 6 Ivl=10ms T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.15 uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:10.0 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms # lsusb Bus 004 Device 001: ID 0000:0000 Bus 002 Device 003: ID 051d:0002 American Power Conversion Back-UPS Pro 500/1000/1500 Bus 002 Device 001: ID 0000:0000 Bus 003 Device 002: ID 0781:5150 SanDisk Corp. SDCZ2 Cruzer Mini Flash Drive (thin) Bus 003 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 Okay, your device isn't even enumerating properly on the USB bus at high-speed. This isn't a usb-storage problem; that driver hasn't even been selected for the device yet. This bug needs to be re-assigned. Can you try 2.6.16-rc2? Some ehci bios fixes are in there. Okay, I will try 2.6.16-rc2 and report back. I just tried with 2.6.16-rc2, but got the same results: it doesn't even enumerate with ehci_hcd loaded (but apparently attempts to, according to the logs), but if I removed ehci_hcd it starts to work (because of fallback to uhci_hcd). The syslogs, contents of /proc/bus/usb/devices, and output of lsusb before and after ehci_hcd is removed look the same as I posted previously. Again, this is happening on an x86_64 (in x86_64 mode), so I don't know if there is something to do with 64-bit cleanness, or if it's just an issue of the newer hardware. One thing I could possibly try is to boot up a live-CD in x86 mode and see if it works then... let me see if I can do that; I'll post what happens (it might be with an slightly older kernel, though). Tried an x86 live-CD (Ubuntu) with their 2.6.10 kernel on the same computer. The behavior was pretty much the same (when ehci_hcd is loaded, detects the insertion, but doesn't actually enumerate right; if ehci_hcd is removed, it falls back to uhci_hcd and works). So it does seem to have to do with this computer's hardware as opposed to being in 64-bit mode. Please let me know if I can provide more info or assistance. David, this looks like a problem that others are having... I have also something similar here x86_64 (AMD Athlon X2) Linux azul1 2.6.15-gentoo-r5 #2 SMP PREEMPT Thu Feb 16 00:30:26 CET 2006 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4200+ AuthenticAMD GNU/Linux With some configurations it also fails... --------------------------- CUT HERE ---------------------------------- Feb 16 00:35:42 localhost kernel: usb 1-4: new high speed USB device using ehci_ hcd and address 3 Feb 16 00:35:47 localhost kernel: usb 1-4: unable to read config index 0 descrip tor/start Feb 16 00:35:47 localhost kernel: usb 1-4: can't read configurations, error -110 Feb 16 00:35:47 localhost kernel: usb 1-4: new high speed USB device using ehci_ hcd and address 4 Feb 16 00:35:53 localhost kernel: usb 1-4: unable to read config index 0 descrip tor/all Feb 16 00:35:53 localhost kernel: usb 1-4: can't read configurations, error -110 Feb 16 00:35:53 localhost kernel: usb 1-4: new high speed USB device using ehci_ hcd and address 5 Feb 16 00:36:03 localhost kernel: scsi5 : SCSI emulation for USB Mass Storage devices Feb 16 00:36:03 localhost kernel: usb-storage: device found at 5 Feb 16 00:36:03 localhost kernel: usb-storage: waiting for device to settle before scanning Feb 16 00:36:06 localhost spamd[9534]: spamd: server killed by SIGTERM, shutting down Feb 16 00:36:08 localhost kernel: Vendor: ST380011 Model: 5JV4KTEE Rev: 3.06 Feb 16 00:36:08 localhost kernel: Type: Direct-Access ANSI SCSI revision: 02 Feb 16 00:36:11 localhost udevd-event[9630]: wait_for_sysfs: waiting for '/sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host5/target5:0:0/5:0:0:0/bus' failed Feb 16 00:36:14 localhost udevd-event[9630]: wait_for_sysfs: waiting for '/sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host5/target5:0:0/5:0:0:0/ioerr_cnt' failed Feb 16 00:36:24 localhost scsi.agent[9635]: Attribute /sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host5/target5:0:0/5:0:0:0/type does not exist Feb 16 00:36:38 localhost kernel: usb 1-4: reset high speed USB device using ehci_hcd and address 5 Feb 16 00:36:43 localhost kernel: usb 1-4: device firmware changed Feb 16 00:36:43 localhost kernel: usb 1-4: USB disconnect, address 5 Feb 16 00:36:43 localhost kernel: sd 5:0:0:0: scsi: Device offlined - not ready after error recovery Feb 16 00:36:43 localhost kernel: sd 5:0:0:0: rejecting I/O to offline device Feb 16 00:36:43 localhost last message repeated 2 times Feb 16 00:36:43 localhost kernel: sdb : READ CAPACITY failed. Feb 16 00:36:43 localhost kernel: sdb : status=0, message=00, host=1, driver=00 Feb 16 00:36:43 localhost kernel: sdb : sense not available. Feb 16 00:36:43 localhost kernel: sdb: assuming drive cache: write through Feb 16 00:36:43 localhost kernel: sd 5:0:0:0: Attached scsi disk sdb Feb 16 00:36:43 localhost kernel: sd 5:0:0:0: Attached scsi generic sg2 type 0 Feb 16 00:36:43 localhost kernel: usb-storage: device scan complete Feb 16 00:36:43 localhost usb_id[9666]: usb_id: unable to access '/block/sdb' Feb 16 00:36:43 localhost scsi_id[9670]: scsi_id: unable to access '/block/sdb' Feb 16 00:36:43 localhost scsi_id[9693]: scsi_id: unable to access '/block/sdb' Feb 16 00:36:43 localhost kernel: usb 1-4: new high speed USB device using ehci_hcd and address 6 Feb 16 00:36:48 localhost kernel: usb 1-4: unable to read config index 0 descriptor/all Feb 16 00:36:48 localhost kernel: usb 1-4: can't read configurations, error -110 Feb 16 00:36:48 localhost kernel: usb 1-4: new high speed USB device using ehci_hcd and address 7 Feb 16 00:36:53 localhost kernel: scsi6 : SCSI emulation for USB Mass Storage devices Feb 16 00:36:53 localhost kernel: usb-storage: device found at 7 Feb 16 00:36:53 localhost kernel: usb-storage: waiting for device to settle before scanning Feb 16 00:36:58 localhost kernel: Vendor: ST380011 Model: 5JV4KTEE Rev: 3.06 Feb 16 00:36:58 localhost kernel: Type: Direct-Access ANSI SCSI revision: 02 Feb 16 00:37:02 localhost udevd-event[9835]: wait_for_sysfs: waiting for '/sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host6/target6:0:0/6:0:0:0/bus' failed Feb 16 00:37:05 localhost udevd-event[9835]: wait_for_sysfs: waiting for '/sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host6/target6:0:0/6:0:0:0/ioerr_cnt' failed Feb 16 00:37:15 localhost scsi.agent[9850]: Attribute /sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host6/target6:0:0/6:0:0:0/type does not exist Feb 16 00:37:27 localhost ntpd[8981]: synchronized to 217.127.2.161, stratum 2 Feb 16 00:37:28 localhost kernel: usb 1-4: reset high speed USB device using ehci_hcd and address 7 Feb 16 00:37:34 localhost kernel: usb 1-4: device firmware changed Feb 16 00:37:34 localhost kernel: usb 1-4: USB disconnect, address 7 Feb 16 00:37:34 localhost kernel: sd 6:0:0:0: scsi: Device offlined - not ready after error recovery Feb 16 00:37:34 localhost kernel: sd 6:0:0:0: rejecting I/O to offline device Feb 16 00:37:34 localhost last message repeated 2 times Feb 16 00:37:34 localhost kernel: sdb : READ CAPACITY failed. Feb 16 00:37:34 localhost kernel: sdb : status=0, message=00, host=1, driver=00 Feb 16 00:37:34 localhost kernel: sdb : sense not available. Feb 16 00:37:34 localhost kernel: sdb: assuming drive cache: write through Feb 16 00:37:34 localhost kernel: sd 6:0:0:0: Attached scsi disk sdb Feb 16 00:37:34 localhost kernel: sd 6:0:0:0: Attached scsi generic sg2 type 0 Feb 16 00:37:34 localhost kernel: usb-storage: device scan complete Feb 16 00:37:35 localhost usb_id[9902]: usb_id: unable to access '/block/sdb' Feb 16 00:37:35 localhost scsi_id[9905]: scsi_id: unable to access '/block/sdb' Feb 16 00:37:35 localhost scsi_id[9907]: scsi_id: unable to access '/block/sdb' Feb 16 00:37:35 localhost kernel: usb 1-4: new high speed USB device using ehci_hcd and address 8 Feb 16 00:37:40 localhost kernel: usb 1-4: unable to read config index 0 descriptor/all Feb 16 00:37:40 localhost kernel: usb 1-4: can't read configurations, error -110 Feb 16 00:37:40 localhost kernel: usb 1-4: new high speed USB device using ehci_hcd and address 9 Feb 16 00:37:50 localhost kernel: scsi7 : SCSI emulation for USB Mass Storage devices Feb 16 00:37:50 localhost kernel: usb-storage: device found at 9 Feb 16 00:37:50 localhost kernel: usb-storage: waiting for device to settle before scanning Feb 16 00:37:55 localhost kernel: Vendor: ST380011 Model: 5JV4KTEE Rev: 3.06 Feb 16 00:37:55 localhost kernel: Type: Direct-Access ANSI SCSI revision: 02 Feb 16 00:37:58 localhost udevd-event[10093]: wait_for_sysfs: waiting for '/sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host7/target7:0:0/7:0:0:0/bus' failed Feb 16 00:38:02 localhost udevd-event[10093]: wait_for_sysfs: waiting for '/sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host7/target7:0:0/7:0:0:0/ioerr_cnt' failed Feb 16 00:38:12 localhost scsi.agent[10098]: Attribute /sys/devices/pci0000:00/0000:00:02.1/usb1/1-4/1-4:1.0/host7/target7:0:0/7:0:0:0/type does not exist Feb 16 00:38:12 localhost kernel: usb 1-4: USB disconnect, address 9 Feb 16 00:38:12 localhost kernel: sdb : READ CAPACITY failed. Feb 16 00:38:12 localhost kernel: sdb : status=0, message=00, host=1, driver=00 Feb 16 00:38:12 localhost kernel: sdb : sense not available. Feb 16 00:38:12 localhost kernel: sdb: assuming drive cache: write through Feb 16 00:38:12 localhost kernel: sdb : READ CAPACITY failed. Feb 16 00:38:12 localhost kernel: sdb : status=0, message=00, host=1, driver=00 Feb 16 00:38:12 localhost kernel: sdb : sense not available. F I removed ehci_hcd support from kernel and now it works perfectly without problems but with usb 1.1 mode I suppose. If you need something please tell me. This is lspci out: -------------- 00:00.0 Memory controller: nVidia Corporation CK804 Memory Controller (rev a3) 00:01.0 ISA bridge: nVidia Corporation CK804 ISA Bridge (rev a3) 00:01.1 SMBus: nVidia Corporation CK804 SMBus (rev a2) 00:02.0 USB Controller: nVidia Corporation CK804 USB Controller (rev a2) 00:02.1 USB Controller: nVidia Corporation CK804 USB Controller (rev a3) 00:04.0 Multimedia audio controller: nVidia Corporation CK804 AC'97 Audio Controller (rev a2) 00:06.0 IDE interface: nVidia Corporation CK804 IDE (rev f2) 00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev f3) 00:08.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev f3) 00:09.0 PCI bridge: nVidia Corporation CK804 PCI Bridge (rev a2) 00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3) 00:0b.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3) 00:0c.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3) 00:0d.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3) 00:0e.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3) 00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600] (rev a2) 05:06.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 05) 05:06.1 Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 05) 05:07.0 SCSI storage controller: Adaptec AHA-7850 (rev 03) 05:08.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01) 05:0b.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link) -------------- And this is the working driver output with ohci: -------------- Feb 16 01:04:16 localhost kernel: ehci_hcd 0000:00:02.1: remove, state 1 Feb 16 01:04:16 localhost kernel: usb usb2: USB disconnect, address 1 Feb 16 01:04:16 localhost kernel: ehci_hcd 0000:00:02.1: USB bus 2 deregistered Feb 16 01:04:16 localhost kernel: ACPI: PCI interrupt for device 0000:00:02.1 disabled Feb 16 01:05:06 localhost kernel: usb 1-4: new full speed USB device using ohci_hcd and address 4 Feb 16 01:05:06 localhost kernel: scsi5 : SCSI emulation for USB Mass Storage devices Feb 16 01:05:06 localhost kernel: usb-storage: device found at 4 Feb 16 01:05:06 localhost kernel: usb-storage: waiting for device to settle before scanning Feb 16 01:05:11 localhost kernel: Vendor: ST380011 Model: 5JV4KTEE Rev: 3.06 Feb 16 01:05:11 localhost kernel: Type: Direct-Access ANSI SCSI revision: 02 Feb 16 01:05:11 localhost kernel: SCSI device sdb: 156301488 512-byte hdwr sectors (80026 MB) Feb 16 01:05:11 localhost kernel: sdb: assuming drive cache: write through Feb 16 01:05:11 localhost kernel: SCSI device sdb: 156301488 512-byte hdwr sectors (80026 MB) Feb 16 01:05:11 localhost kernel: sdb: assuming drive cache: write through Feb 16 01:05:11 localhost kernel: sdb: unknown partition table Feb 16 01:05:11 localhost kernel: sd 5:0:0:0: Attached scsi disk sdb Feb 16 01:05:11 localhost kernel: sd 5:0:0:0: Attached scsi generic sg2 type 0 Feb 16 01:05:11 localhost kernel: usb-storage: device scan complete Feb 16 01:05:11 localhost scsi.agent[10048]: disk at /devices/pci0000:00/0000:00:02.0/usb1/1-4/1-4:1.0/host5/target5:0:0/5:0:0:0 Thank you so much for your BIG support. Created attachment 7405 [details]
Modules loaded
Created attachment 7406 [details]
lspci Info
Created attachment 7407 [details]
lspci verbose
Created attachment 7408 [details]
lsusb information
Created attachment 7409 [details]
lsusb verbose Info
Created attachment 7410 [details]
dmesg Information
I uploaded files with information about the problem in my computer, i think could be useful to solve it. Those files are from kernel 2.6.15 (Debian), I tryed with a knoppix LiveCD distro and the problems remains the same. Note about in dmesg information, the error SCSI device sda: 312581808 512-byte hdwr sectors (160042 MB) sda: assuming drive cache: write through sda:<6>sd 0:0:0:0: Device not ready. end_request: I/O error, dev sda, sector 0 Buffer I/O error on device sda, logical block 0 unable to read partition table David, any ideas? FWIW, I've been having the same issues on on Athlon 1.2 GHz machine with an add-on ALi USB PCI Card. This would seem to eliminate 64 vs. 32 bit problems as well as manufacturer/chipset issues since different chipsets reported above. Same symptoms - high speed device doesn't work with ehci-hcd loaded, as soon as it is removed, works great (albeit only at Full Speed). `lspci | grep USB`: 0000:00:07.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 16) 0000:00:07.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 16) 0000:00:0c.0 USB Controller: ALi Corporation USB 1.1 Controller (rev 03) 0000:00:0c.1 USB Controller: ALi Corporation USB 1.1 Controller (rev 03) 0000:00:0c.2 USB Controller: ALi Corporation USB 1.1 Controller (rev 03) 0000:00:0c.3 USB Controller: ALi Corporation USB 2.0 Controller (rev 01) Also, ehci-hcd being loaded seems to cause problems on restore from S3 standby, but that's for a different bugreport. I have the same problems on my IBM Thinkpad Laptop (definitely 32 bit...). I assumed it is a hardware problem, as it started to happen one day, without a kernel upgrade. Just a shame the fallback doesn't happen automatically. I have to rmmod ehci_hcd before plugging in my USB storage device. I even had cases where the negitioation was successful with ehci and I could mount my drive, but then suddenly it got errors. Certainly my USB2 controller is to blame. I have the same problem on FC4 using the kernel 2.6.11-1.1369_FC4 and 2.6.15.6 (Vanilla). If I to remove ehci_hcd (modprobe -r ehci_hcd) my printer works, but it's very slow (10 min. for print a page), because it's working on uhci_hcd (USB 1.1). The printer needs high speed like ehci_hcd (USB 2.0). #lsmod |grep hcd uhci_hcd 35152 0 ehci_hcd 41037 0 #lsusb Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 When I plug #cat /var/log/messages Mar 14 18:25:15 Firewall kernel: PCI: Found IRQ 5 for device 0000:00:10.4 Mar 14 18:25:15 Firewall kernel: PCI: Sharing IRQ 5 with 0000:00:11.5 Mar 14 18:25:15 Firewall kernel: ehci_hcd 0000:00:10.4: EHCI Host Controller Mar 14 18:25:15 Firewall kernel: ehci_hcd 0000:00:10.4: new USB bus registered, assigned bus number 4 Mar 14 18:25:15 Firewall kernel: ehci_hcd 0000:00:10.4: irq 5, io mem 0xee001000 Mar 14 18:25:15 Firewall kernel: ehci_hcd 0000:00:10.4: USB 2.0 initialized, EHCI 1.00, driver 10 Dec 2004 Mar 14 18:25:15 Firewall kernel: hub 4-0:1.0: USB hub found Mar 14 18:25:15 Firewall kernel: hub 4-0:1.0: 6 ports detected Mar 14 18:25:15 Firewall kernel: usb 4-5: new high speed USB device using ehci_hcd and address 2 Mar 14 18:25:15 Firewall kernel: usb 4-5: device not accepting address 2, error -71 Mar 14 18:25:15 Firewall kernel: usb 4-5: new high speed USB device using ehci_hcd and address 3 Mar 14 18:25:16 Firewall kernel: usb 4-5: device not accepting address 3, error -71 Mar 14 18:25:16 Firewall kernel: usb 4-5: new high speed USB device using ehci_hcd and address 4 Mar 14 18:25:16 Firewall kernel: usb 4-5: device descriptor read/64, error -71 Mar 14 18:25:16 Firewall kernel: usb 4-5: device descriptor read/64, error -71 Mar 14 18:25:16 Firewall kernel: usb 4-5: new high speed USB device using ehci_hcd and address 5 Mar 14 18:25:16 Firewall kernel: usb 4-5: device descriptor read/64, error -71 Mar 14 18:25:16 Firewall kernel: usb 4-5: device descriptor read/64, error -71 Mar 14 18:25:17 Firewall kernel: usb 3-1: USB disconnect, address 2 After I removed the EHCI. #modprobe -r ehci_hcd #lsmod |grep hcd uhci_hcd 35152 0 #lsusb Bus 004 Device 002: ID 03f0:2c17 Hewlett-Packard Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:000 #lspci -v |grep USB 00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) (prog-if 00 [UHCI]) 00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) (prog-if 00 [UHCI]) 00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) (prog-if 00 [UHCI]) 00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86) (prog-if 20 [EHCI]) I have also similar problem. Hardware: CPU: AMD64 3200+ MotherBoard: ASUS A8VE-SE USB 2.0 controllers: VIA (integrated) or NEC (PCI) Kernels 2.6.13 (SuSE), 2.6.15, 2.6.16 (in 32 or in 64 bit mode, never mind) USB 2.0 Transcend flash works extremely slow with kernel 2.6 (12 KB/s). But with 2.4.26 or with another OS it works well (~2MB/s) Just verified this problem still exists with 2.6.16, so bumping that field. I think I'm having similar problems using 2.6.17-rc0-git13 on x86_64 [root@localhost ~]# lspci 00:00.0 Host bridge: VIA Technologies, Inc. K8T800Pro Host Bridge 00:00.1 Host bridge: VIA Technologies, Inc. K8T800Pro Host Bridge 00:00.2 Host bridge: VIA Technologies, Inc. K8T800Pro Host Bridge 00:00.3 Host bridge: VIA Technologies, Inc. K8T800Pro Host Bridge 00:00.4 Host bridge: VIA Technologies, Inc. K8T800Pro Host Bridge 00:00.7 Host bridge: VIA Technologies, Inc. K8T800Pro Host Bridge 00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI bridge [K8T800/K8T890 South] 00:07.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80) 00:0a.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller (rev 13) 00:0d.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 100] (rev 01) 00:0f.0 RAID bus controller: VIA Technologies, Inc. VIA VT6420 SATA RAID Controller (rev 80) 00:0f.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06) 00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) 00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) 00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) 00:10.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81) 00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86) 00:11.0 ISA bridge: VIA Technologies, Inc. VT8237 ISA bridge [KT600/K8T800/K8T890 South] 00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 60) 00:11.6 Communication controller: VIA Technologies, Inc. AC'97 Modem Controller (rev 80) 00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 01:00.0 VGA compatible controller: nVidia Corporation NV40 [GeForce 6800] (rev a1) Curiously it happend with the default 2.6.16 kernel from FC5 and also using 2.6.17-rc0-git13 (was testing the libata update). I don't know if other people had this but the problem occured, I think, only after my screen went black resulting of a period of inactivity... When I came back to my PC my USB mouse started acting weird... In a shell I rmmod ehci_hcd and uhci_hcd and reregistered uhci_hcd and ehci_hcd using modprobe... Now everything works fine... and my mouse is back to normal... The dmesg error I got seemed to focus on my flash card reader (which is now disconnected): Mar 29 08:25:41 localhost kernel: unable to read partition table Mar 29 08:25:41 localhost kernel: 3:0:0:2: rejecting I/O to dead device Mar 29 08:25:41 localhost kernel: usb 1-7: new high speed USB device using ehci_hcd and address 6 Mar 29 08:25:52 localhost kernel: usb 1-7: device not accepting address 6, error -110 Mar 29 08:25:52 localhost kernel: usb 1-7: new high speed USB device using ehci_hcd and address 7 Mar 29 08:26:04 localhost kernel: usb 1-7: device not accepting address 7, error -110 Mar 29 08:26:04 localhost kernel: usb 1-7: new high speed USB device using ehci_hcd and address 8 Mar 29 08:26:14 localhost kernel: usb 1-7: device not accepting address 8, error -110 Mar 29 08:26:14 localhost kernel: usb 1-7: new high speed USB device using ehci_hcd and address 9 Mar 29 08:26:25 localhost kernel: usb 1-7: device not accepting address 9, error -110 - vin Created attachment 7701 [details]
2.6.17-rc0-git13-x86_64 dmesg
My dmesg output on 2.6.17-rc0-git13-x86_64
Created attachment 8018 [details]
experimental 2.6.17-rc3 SET_ADDRESS patch
There's much wierdness here.
I'm attaching one experimental patch to handle SET_ADDRESS errors
a bit differently ... this might affect some of the failure modes
that have been tacked onto this bug report. The issue being that
if SET_ADDRESS fails, the peripheral state is indeterminate ... so
the patch just forces a reset. (There's a potential losing path,
when the SET_ADDRESS actually took effect but the host couldn't know,
the previous code would work ... that's the only case the previous
code would work, NOT the case where SET_ADDRESS really failed.)
The original report is pretty different from all the others ... it's troublesome to see multiple unrelated problems grouped under the same bug id. As for that first problem report ('comment #0') those log messages aren't at all helpful; we need CONFIG_USB_DEBUG output too. In fact, you seem to be getting syslogged data rather than the direct "dmesg" output, so it's very possible there's information describing the key details that you just didn't include. Comment #11 has some very strange stuff ... the descriptors being read after the device reset are different from the originals, and that's why the reset reports that the firmware changed. I am the original reporter. I can't do much about the other reports being unrelated, and I obviously am most concerned with my particular bug, but fixing any of them of course would be progress. =) Anyway, I'll go compile 2.6.17-rc3 with CONFIG_USB_DEBUG and show direct dmesg output. Is there anything else that would be helpful? Okay, with 2.6.17-rc3 with CONFIG_USB_DEBUG on, here is the incremental dmesg output. Very verbose, but hopefully helpful. Please let me know if there is other diagnostic info that you would like: **** 'dmesg | grep -Ei 'usb|hci' immediately on booting **** usbcore: registered new driver usbfs usbcore: registered new driver hub 0000:00:10.0: uhci_check_and_reset_hc: legsup = 0x2000 0000:00:10.1: uhci_check_and_reset_hc: legsup = 0x2000 0000:00:10.2: uhci_check_and_reset_hc: legsup = 0x2000 0000:00:10.3: uhci_check_and_reset_hc: legsup = 0x2000 usbmon: debugfs is not available PCI0 USB0 USB1 USB2 USB3 USB4 USB5 USB6 AC97 PEXG PEX0 PEX1 PEX2 PEX3 UAR1 ohci1394: fw-host0: OHCI-1394 1.1 (PCI): IRQ=[90] MMIO=[da024000-da0247ff] Max Packet=[2048] IR/IT contexts=[4/8] USB Universal Host Controller Interface driver v3.0 uhci_hcd 0000:00:10.0: UHCI Host Controller drivers/usb/core/inode.c: creating file 'devices' drivers/usb/core/inode.c: creating file '001' uhci_hcd 0000:00:10.0: new USB bus registered, assigned bus number 1 uhci_hcd 0000:00:10.0: detected 2 ports uhci_hcd 0000:00:10.0: uhci_check_and_reset_hc: cmd = 0x0000 uhci_hcd 0000:00:10.0: Performing full reset uhci_hcd 0000:00:10.0: irq 98, io base 0x0000dc00 usb usb1: default language 0x0409 usb usb1: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb1: Product: UHCI Host Controller usb usb1: Manufacturer: Linux 2.6.17-rc3 uhci_hcd usb usb1: SerialNumber: 0000:00:10.0 usb usb1: uevent usb usb1: device is self-powered usb usb1: configuration #1 chosen from 1 choice usb usb1: adding 1-0:1.0 (config #1, interface 0) usb 1-0:1.0: uevent hub 1-0:1.0: usb_probe_interface hub 1-0:1.0: usb_probe_interface - got id hub 1-0:1.0: USB hub found hub 1-0:1.0: no power switching (usb 1.0) drivers/usb/core/inode.c: creating file '001' uhci_hcd 0000:00:10.0: port 1 portsc 008a,00 uhci_hcd 0000:00:10.1: UHCI Host Controller drivers/usb/core/inode.c: creating file '002' uhci_hcd 0000:00:10.1: new USB bus registered, assigned bus number 2 uhci_hcd 0000:00:10.1: detected 2 ports uhci_hcd 0000:00:10.1: uhci_check_and_reset_hc: cmd = 0x0000 uhci_hcd 0000:00:10.1: Performing full reset uhci_hcd 0000:00:10.1: irq 98, io base 0x0000e000 usb usb2: default language 0x0409 usb usb2: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb2: Product: UHCI Host Controller usb usb2: Manufacturer: Linux 2.6.17-rc3 uhci_hcd usb usb2: SerialNumber: 0000:00:10.1 usb usb2: uevent usb usb2: device is self-powered usb usb2: configuration #1 chosen from 1 choice usb usb2: adding 2-0:1.0 (config #1, interface 0) usb 2-0:1.0: uevent hub 2-0:1.0: usb_probe_interface hub 2-0:1.0: usb_probe_interface - got id hub 2-0:1.0: USB hub found hub 2-0:1.0: no power switching (usb 1.0) drivers/usb/core/inode.c: creating file '001' uhci_hcd 0000:00:10.2: UHCI Host Controller drivers/usb/core/inode.c: creating file '003' uhci_hcd 0000:00:10.2: new USB bus registered, assigned bus number 3 uhci_hcd 0000:00:10.2: detected 2 ports uhci_hcd 0000:00:10.2: uhci_check_and_reset_hc: cmd = 0x0000 uhci_hcd 0000:00:10.2: Performing full reset uhci_hcd 0000:00:10.2: irq 98, io base 0x0000e400 usb usb3: default language 0x0409 usb usb3: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb3: Product: UHCI Host Controller usb usb3: Manufacturer: Linux 2.6.17-rc3 uhci_hcd usb usb3: SerialNumber: 0000:00:10.2 usb usb3: uevent usb usb3: device is self-powered usb usb3: configuration #1 chosen from 1 choice usb usb3: adding 3-0:1.0 (config #1, interface 0) usb 3-0:1.0: uevent hub 3-0:1.0: usb_probe_interface hub 3-0:1.0: usb_probe_interface - got id hub 3-0:1.0: USB hub found hub 3-0:1.0: no power switching (usb 1.0) uhci_hcd 0000:00:10.0: port 2 portsc 008a,00 ehci_hcd: block sizes: qh 160 qtd 96 itd 192 sitd 96 drivers/usb/core/inode.c: creating file '001' uhci_hcd 0000:00:10.3: UHCI Host Controller drivers/usb/core/inode.c: creating file '004' uhci_hcd 0000:00:10.3: new USB bus registered, assigned bus number 4 uhci_hcd 0000:00:10.3: detected 2 ports uhci_hcd 0000:00:10.3: uhci_check_and_reset_hc: cmd = 0x0000 uhci_hcd 0000:00:10.3: Performing full reset uhci_hcd 0000:00:10.3: irq 98, io base 0x0000e800 usb usb4: default language 0x0409 usb usb4: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb4: Product: UHCI Host Controller usb usb4: Manufacturer: Linux 2.6.17-rc3 uhci_hcd usb usb4: SerialNumber: 0000:00:10.3 usb usb4: uevent usb usb4: device is self-powered usb usb4: configuration #1 chosen from 1 choice usb usb4: adding 4-0:1.0 (config #1, interface 0) usb 4-0:1.0: uevent hub 4-0:1.0: usb_probe_interface hub 4-0:1.0: usb_probe_interface - got id hub 4-0:1.0: USB hub found hub 4-0:1.0: no power switching (usb 1.0) uhci_hcd 0000:00:10.1: port 1 portsc 01ab,00 drivers/usb/core/inode.c: creating file '001' usb 2-1: new low speed USB device using uhci_hcd and address 2 usb 2-1: skipped 1 descriptor after interface usb 2-1: default language 0x0409 usb 2-1: new device strings: Mfr=3, Product=1, SerialNumber=2 usb 2-1: Product: Back-UPS ES 725 FW:802.n2.D USB FW:n2 usb 2-1: Manufacturer: APC usb 2-1: SerialNumber: QB0348242412 usb 2-1: uevent usb 2-1: device is bus-powered usb 2-1: configuration #1 chosen from 1 choice usb 2-1: adding 2-1:1.0 (config #1, interface 0) usb 2-1:1.0: uevent drivers/usb/core/inode.c: creating file '002' uhci_hcd 0000:00:10.1: port 2 portsc 018a,00 uhci_hcd 0000:00:10.2: port 1 portsc 008a,00 uhci_hcd 0000:00:10.2: port 2 portsc 008a,00 uhci_hcd 0000:00:10.3: port 1 portsc 018a,00 uhci_hcd 0000:00:10.3: port 2 portsc 018a,00 uhci_hcd 0000:00:10.0: suspend_rh (auto-stop) uhci_hcd 0000:00:10.2: suspend_rh (auto-stop) uhci_hcd 0000:00:10.3: suspend_rh (auto-stop) ehci_hcd 0000:00:10.4: EHCI Host Controller drivers/usb/core/inode.c: creating file '005' ehci_hcd 0000:00:10.4: new USB bus registered, assigned bus number 5 ehci_hcd 0000:00:10.4: reset hcs_params 0x4208 dbg=0 cc=4 pcc=2 ordered !ppc ports=8 ehci_hcd 0000:00:10.4: reset hcc_params 6872 thresh 7 uframes 256/512/1024 ehci_hcd 0000:00:10.4: MWI active ehci_hcd 0000:00:10.4: supports USB remote wakeup ehci_hcd 0000:00:10.4: irq 98, io mem 0xda025000 ehci_hcd 0000:00:10.4: reset command 080002 (park)=0 ithresh=8 period=1024 Reset HALT ehci_hcd 0000:00:10.4: init command 010009 (park)=0 ithresh=1 period=256 RUN ehci_hcd 0000:00:10.4: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 usb usb5: default language 0x0409 usb usb5: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb5: Product: EHCI Host Controller usb usb5: Manufacturer: Linux 2.6.17-rc3 ehci_hcd usb usb5: SerialNumber: 0000:00:10.4 usb usb5: uevent usb usb5: device is self-powered usb usb5: configuration #1 chosen from 1 choice usb usb5: adding 5-0:1.0 (config #1, interface 0) usb 5-0:1.0: uevent hub 5-0:1.0: usb_probe_interface hub 5-0:1.0: usb_probe_interface - got id hub 5-0:1.0: USB hub found hub 5-0:1.0: no power switching (usb 1.0) drivers/usb/core/inode.c: creating file '001' ehci_hcd 0000:00:10.4: GetStatus port 3 status 001403 POWER sig=k CSC CONNECT ehci_hcd 0000:00:10.4: port 3 low speed --> companion ehci_hcd 0000:00:10.4: GetStatus port 3 status 003402 POWER OWNER sig=k CSC uhci_hcd 0000:00:10.1: port 1 portsc 01ab,00 usb 2-1: USB disconnect, address 2 usb 2-1: usb_disable_device nuking all URBs usb 2-1: unregistering interface 2-1:1.0 usb 2-1:1.0: uevent usb 2-1: unregistering device usb 2-1: uevent usb 2-1: new low speed USB device using uhci_hcd and address 3 usb 2-1: skipped 1 descriptor after interface usb 2-1: default language 0x0409 usb 2-1: new device strings: Mfr=3, Product=1, SerialNumber=2 usb 2-1: Product: Back-UPS ES 725 FW:802.n2.D USB FW:n2 usb 2-1: Manufacturer: APC usb 2-1: SerialNumber: QB0348242412 usb 2-1: uevent usb 2-1: device is bus-powered usb 2-1: configuration #1 chosen from 1 choice usb 2-1: adding 2-1:1.0 (config #1, interface 0) usb 2-1:1.0: uevent drivers/usb/core/inode.c: creating file '003' usbcore: registered new driver hiddev usbhid 2-1:1.0: usb_probe_interface usbhid 2-1:1.0: usb_probe_interface - got id drivers/usb/core/file.c: looking for a minor, starting at 96 hiddev96: USB HID v1.10 Device [APC Back-UPS ES 725 FW:802.n2.D USB FW:n2] on usb-0000:00:10.1-1 usbcore: registered new driver usbhid drivers/usb/input/hid-core.c: v2.6:USB HID core driver **** Additional dmesg output after device plugged in with ehci-hcd loaded **** hub 5-0:1.0: state 7 ports 8 chg 0000 evt 0020 ehci_hcd 0000:00:10.4: GetStatus port 5 status 001803 POWER sig=j CSC CONNECT hub 5-0:1.0: port 5, status 0501, change 0001, 480 Mb/s hub 5-0:1.0: debounce: port 5: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: new high speed USB device using ehci_hcd and address 3 ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: new high speed USB device using ehci_hcd and address 4 ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: new high speed USB device using ehci_hcd and address 5 ehci_hcd 0000:00:10.4: devpath 5 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0out 3strikes usb 5-5: device not accepting address 5, error -71 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: new high speed USB device using ehci_hcd and address 6 ehci_hcd 0000:00:10.4: devpath 5 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0out 3strikes usb 5-5: device not accepting address 6, error -71 **** Additional output after 'modprobe -r ehci_hcd' **** ehci_hcd 0000:00:10.4: remove, state 1 ehci_hcd 0000:00:10.4: roothub graceful disconnect usb usb5: USB disconnect, address 1 usb usb5: usb_disable_device nuking all URBs ehci_hcd 0000:00:10.4: shutdown urb ffff81003e19b6c0 pipe 40408180 ep1in-intr usb usb5: unregistering interface 5-0:1.0 usb 5-0:1.0: uevent usb usb5: unregistering device usb usb5: uevent ehci_hcd 0000:00:10.4: stop ehci_hcd 0000:00:10.4: reset command 01000b (park)=0 ithresh=1 period=256 Reset RUN uhci_hcd 0000:00:10.2: wakeup_rh (auto-start) hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0002 uhci_hcd 0000:00:10.2: port 1 portsc 0093,00 hub 3-0:1.0: port 1, status 0101, change 0001, 12 Mb/s ehci_hcd 0000:00:10.4: irq normal 0 err 16 reclaim 16 (lost 0) ehci_hcd 0000:00:10.4: complete 16 unlink 0 ehci_hcd 0000:00:10.4: ehci_stop completed status 1000 Halt ehci_hcd 0000:00:10.4: USB bus 5 deregistered ACPI: PCI interrupt for device 0000:00:10.4 disabled hub 3-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x101 usb 3-1: new full speed USB device using uhci_hcd and address 2 usb 3-1: default language 0x0409 usb 3-1: new device strings: Mfr=1, Product=2, SerialNumber=3 usb 3-1: Product: Cruzer Mini usb 3-1: Manufacturer: SanDisk Corporation usb 3-1: SerialNumber: SNDK7CB1E51B59806804 usb 3-1: uevent usb 3-1: device is bus-powered usb 3-1: configuration #1 chosen from 1 choice usb 3-1: adding 3-1:1.0 (config #1, interface 0) usb 3-1:1.0: uevent drivers/usb/core/inode.c: creating file '002' hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0002 Initializing USB Mass Storage driver... usb-storage 3-1:1.0: usb_probe_interface usb-storage 3-1:1.0: usb_probe_interface - got id scsi2 : SCSI emulation for USB Mass Storage devices usb-storage: device found at 2 usb-storage: waiting for device to settle before scanning usbcore: registered new driver usb-storage USB Mass Storage support registered. Vendor: SanDisk Model: Cruzer Mini Rev: 0.2 Type: Direct-Access ANSI SCSI revision: 02 SCSI device sdb: 2001888 512-byte hdwr sectors (1025 MB) sdb: Write Protect is off sdb: Mode Sense: 03 00 00 00 sdb: assuming drive cache: write through SCSI device sdb: 2001888 512-byte hdwr sectors (1025 MB) sdb: Write Protect is off sdb: Mode Sense: 03 00 00 00 sdb: assuming drive cache: write through sdb: sdb1 sd 2:0:0:0: Attached scsi removable disk sdb usb-storage: device scan complete Just for completeness, incremental dmesg after a 'modprobe ehci_hcd': ehci_hcd: block sizes: qh 160 qtd 96 itd 192 sitd 96 ACPI: PCI Interrupt 0000:00:10.4[C] -> Link [ALKB] -> GSI 21 (level, low) -> IRQ 98 ehci_hcd 0000:00:10.4: EHCI Host Controller drivers/usb/core/inode.c: creating file '005' ehci_hcd 0000:00:10.4: new USB bus registered, assigned bus number 5 ehci_hcd 0000:00:10.4: reset hcs_params 0x4208 dbg=0 cc=4 pcc=2 ordered !ppc ports=8 ehci_hcd 0000:00:10.4: reset hcc_params 6872 thresh 7 uframes 256/512/1024 ehci_hcd 0000:00:10.4: MWI active ehci_hcd 0000:00:10.4: supports USB remote wakeup ehci_hcd 0000:00:10.4: irq 98, io mem 0xda025000 ehci_hcd 0000:00:10.4: reset command 080002 (park)=0 ithresh=8 period=1024 Reset HALT ehci_hcd 0000:00:10.4: init command 010009 (park)=0 ithresh=1 period=256 RUN ehci_hcd 0000:00:10.4: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 usb usb5: default language 0x0409 usb usb5: new device strings: Mfr=3, Product=2, SerialNumber=1 usb usb5: Product: EHCI Host Controller usb usb5: Manufacturer: Linux 2.6.17-rc3 ehci_hcd usb usb5: SerialNumber: 0000:00:10.4 usb usb5: uevent usb usb5: device is self-powered usb usb5: configuration #1 chosen from 1 choice usb usb5: adding 5-0:1.0 (config #1, interface 0) usb 5-0:1.0: uevent hub 5-0:1.0: usb_probe_interface hub 5-0:1.0: usb_probe_interface - got id hub 5-0:1.0: USB hub found hub 5-0:1.0: 8 ports detected hub 5-0:1.0: standalone hub hub 5-0:1.0: no power switching (usb 1.0) hub 5-0:1.0: individual port over-current protection hub 5-0:1.0: Single TT hub 5-0:1.0: TT requires at most 8 FS bit times (666 ns) hub 5-0:1.0: power on to power good time: 20ms hub 5-0:1.0: local power source is good uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 usbhid 2-1:1.0: retrying intr urb uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 hub 3-0:1.0: state 7 ports 2 chg 0000 evt 0002 uhci_hcd 0000:00:10.2: port 1 portsc 009a,00 hub 3-0:1.0: port 1, status 0100, change 0003, 12 Mb/s usb 3-1: USB disconnect, address 2 usb 3-1: usb_disable_device nuking all URBs usb 3-1: unregistering interface 3-1:1.0 usb 3-1:1.0: uevent usb 3-1: unregistering device usb 3-1: uevent usbhid 2-1:1.0: retrying intr urb uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 drivers/usb/core/inode.c: creating file '001' usbhid 2-1:1.0: retrying intr urb hub 3-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x100 hub 5-0:1.0: state 7 ports 8 chg 0000 evt 0000 ehci_hcd 0000:00:10.4: GetStatus port 3 status 001403 POWER sig=k CSC CONNECT hub 5-0:1.0: port 3, status 0501, change 0001, 480 Mb/s uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 hub 5-0:1.0: debounce: port 3: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:10.4: port 3 low speed --> companion usbhid 2-1:1.0: retrying intr urb uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 ehci_hcd 0000:00:10.4: GetStatus port 3 status 003402 POWER OWNER sig=k CSC ehci_hcd 0000:00:10.4: GetStatus port 5 status 001803 POWER sig=j CSC CONNECT hub 5-0:1.0: port 5, status 0501, change 0001, 480 Mb/s usbhid 2-1:1.0: retrying intr urb uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 hub 5-0:1.0: debounce: port 5: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: new high speed USB device using ehci_hcd and address 3 ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes usbhid 2-1:1.0: retrying intr urb uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: device descriptor read/64, error -71 usbhid 2-1:1.0: retrying intr urb uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes usbhid 2-1:1.0: retrying intr urb ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 usb 5-5: device descriptor read/64, error -71 usbhid 2-1:1.0: retrying intr urb uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usbhid 2-1:1.0: retrying intr urb usb 5-5: new high speed USB device using ehci_hcd and address 4 ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes uhci_hcd 0000:00:10.1: uhci_result_common: failed with status 440000 usbhid 2-1:1.0: resetting device ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0in 3strikes ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT uhci_hcd 0000:00:10.2: suspend_rh (auto-stop) usb 5-5: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: new high speed USB device using ehci_hcd and address 5 ehci_hcd 0000:00:10.4: devpath 5 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0out 3strikes usb 5-5: device not accepting address 5, error -71 ehci_hcd 0000:00:10.4: port 5 high speed ehci_hcd 0000:00:10.4: GetStatus port 5 status 001005 POWER sig=se0 PE CONNECT usb 5-5: new high speed USB device using ehci_hcd and address 6 ehci_hcd 0000:00:10.4: devpath 5 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 5 ep0out 3strikes usb 5-5: device not accepting address 6, error -71 hub 2-0:1.0: state 7 ports 2 chg 0000 evt 0002 hub 2-0:1.0: state 7 ports 2 chg 0000 evt 0002 usb 2-1: reset low speed USB device using uhci_hcd and address 3 hub 2-0:1.0: state 7 ports 2 chg 0000 evt 0002 Some of the problems reported here could be caused by poor-quality USB cables, perhaps even the internal cables that connect the USB port on the computer case with the motherboard connector. They might be good enough to work at 12 Mb/s but not at 480 Mb/s. As for that original report, I see that port 5 is misbehaving. As Alan noted, that could be because of wiring problems. Do all the other ports have the same issue? Sometimes the USB ports on the motherboard work fine, but the ones hooked up to case expanders (front panel, side panel, etc) have poor quality wiring that causes that sort of problem... Those "error 71" problems are annoying, luckily most folk don't see them. That's "EPROTO", which in this case got reported when there were three consecutive lowlevel errors: timeout (device didn't respond to a usb token), wrong PID (responded incorrectly), bad CRC (ditto), and so on. Some users have confirmed that these problems kick in with bad case expander cables. If you happen to have hardware tools like an oscilloscope, you might try putting together an "eye diagram" to see if there are signal quality issues that could explain the problem you're seeing. Wesley ... one more thing to try, just in case, is to make sure you load the EHCI driver **FIRST** not last. It's not supposed to matter, but some users have reported that it does. Plugging it in a different port doesn't make much difference. The previous reports were plugging in the front panel, but I have tried multiple devices on multiple ports (front and back of the computer) to no avail. Here is the incremental dmesg from plugging it in the back (a connector directly soldered to the motherboard). hub 5-0:1.0: state 7 ports 8 chg 0000 evt 0002 ehci_hcd 0000:00:10.4: GetStatus port 1 status 001803 POWER sig=j CSC CONNECT hub 5-0:1.0: port 1, status 0501, change 0001, 480 Mb/s hub 5-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: new high speed USB device using ehci_hcd and address 11 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: new high speed USB device using ehci_hcd and address 12 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: new high speed USB device using ehci_hcd and address 13 ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes usb 5-1: device not accepting address 13, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: new high speed USB device using ehci_hcd and address 14 ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes usb 5-1: device not accepting address 14, error -71 As for module ordering, it doesn't seem to make any difference. I get the same results if I do: $ modprobe -r ehci_hcd uhci_hcd $ modprobe ehci_hcd $ lsmod | grep hcd ehci_hcd 51208 0 ### insert device ### $ modprobe uhci_hcd ### or insert device here ### Either of the above gives the same error messages previous reported. (But, I didn't unload any of the other usb modules, just the hcd modules, if that makes a difference--it seems that it shouldn't.) Unfortunately, I don't have a scope at home, and don't have problems with any computers at work. ;) But since I get the same behavior from connectors directly soldered to the motherboard, it seems doubtful that this is the problem. Also, I'm pretty sure it's not the devices problem, as I've tried ~5 devices with the same results, and all of them work on different machines just fine. Maybe a quirky EHCI chipset on this motherboard that needs some sort of workaround? Anyway, for reference, here is a different USB device plugged in: hub 1-0:1.0: state 7 ports 8 chg 0000 evt 0002 ehci_hcd 0000:00:10.4: GetStatus port 1 status 001002 POWER sig=se0 CSC hub 1-0:1.0: port 1, status 0100, change 0001, 12 Mb/s hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x100 hub 1-0:1.0: state 7 ports 8 chg 0000 evt 0002 ehci_hcd 0000:00:10.4: GetStatus port 1 status 001803 POWER sig=j CSC CONNECT hub 1-0:1.0: port 1, status 0501, change 0001, 480 Mb/s hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: new high speed USB device using ehci_hcd and address 7 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: new high speed USB device using ehci_hcd and address 8 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: new high speed USB device using ehci_hcd and address 9 ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes usb 1-1: device not accepting address 9, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 1-1: new high speed USB device using ehci_hcd and address 10 ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes Do you have _any_ high speed devices that work on your motherboard? If not, it would seem to be a problem with that board. It's very possible to have manufacturing or design bugs that corrupt signal quality. Plus, it's VIA hardware; I hate to blame things on that company, but they seem to trigger more problems than any other vendor. (Disproportionate with respect to their market share.) It also would be interesting to know if Windows is able to drive the hardware better than Linux. sadly it seems like it does since I don't have that type of bug using windows on my via k8t800 chipset... although I still get some other anoying things but it has nothing to do with usb :) I wasn't asking about the chipset; I was asking about that particular motherboard. It's entirely possible for one motherboard to have a hardware incompatibility even though another (using the same chipset) doesn't. A relatively small variation in some timing tolerance would be enough to do it. On the same computer where the EHCI controller fails to work under Linux, does it succeed under Windows? If it does, then the Windows driver knows about some trick that the Linux driver doesn't. Probably some vendor-specific property of the controller. So did that patch change anything? I'd expect at least different diagnostics... Dave, you attached that patch to bug #6374, not this one. According to the original poster, it did not help. It's getting pretty confusing... Bugs related to this one include 6374 and also 6201 and 6214. Sorry, I don't have Windows on this machine, so I can't say if it works under Windows or not. As far as the patch goes, I ran 2.6.17-rc3, which I assumed from the context had that patch already in it, but it sounds like that was incorrect. If so, let me know and I'll try again with that patch applied manually to the 2.6.17-rc3 tree. Created attachment 8144 [details]
refreshed ehci unlink patch
noticed a glitch in the preceding version of the patch; this should
be a bit better.
Wesley, no the patch was NOT in 2.6.17-rc3 (or rc4), that's why it was a patch _against_ that kernel version. To repeat: try the current kernel WITH THE ATTACHED PATCH APPLIED. I did ... with no changes. In my case which might be a slightly different, my USB problems made me also rmmod ehci_hcd and uhci_hcd then modprobe again uhci_hcd to fix it. Although it was being caught by the fact that K8T800 motherboard using an AMD X2 processor is badly taken care of causing irqbalance to cause a lot of different problems including often a jerky mouse. In my case diabling the irqbalance service fixed my problem until my board gets fully supported into the kernel. - vin I will try the new patch shortly. Okay, tried with 2.6.17-rc3 + "refreshed ehci unlink patch", with no noticeable behavioral effect. Here are some dmesg outputs: *** Plugging in a high-speed device: hub 5-0:1.0: state 7 ports 8 chg 0000 evt 0002 ehci_hcd 0000:00:10.4: GetStatus port 1 status 001803 POWER sig=j CSC CONNECT hub 5-0:1.0: port 1, status 0501, change 0001, 480 Mb/s hub 5-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: new high speed USB device using ehci_hcd and address 3 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: new high speed USB device using ehci_hcd and address 4 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0in 3strikes ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: new high speed USB device using ehci_hcd and address 5 ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes usb 5-1: device not accepting address 5, error -71 ehci_hcd 0000:00:10.4: port 1 high speed ehci_hcd 0000:00:10.4: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT usb 5-1: new high speed USB device using ehci_hcd and address 6 ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 1 ep0out 3strikes usb 5-1: device not accepting address 6, error -71 *** Different device, different port: hub 5-0:1.0: state 7 ports 8 chg 0000 evt 0002 ehci_hcd 0000:00:10.4: GetStatus port 1 status 001002 POWER sig=se0 CSC hub 5-0:1.0: port 1, status 0100, change 0001, 12 Mb/s hub 5-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x100 hub 5-0:1.0: state 7 ports 8 chg 0000 evt 0010 ehci_hcd 0000:00:10.4: GetStatus port 4 status 001803 POWER sig=j CSC CONNECT hub 5-0:1.0: port 4, status 0501, change 0001, 480 Mb/s hub 5-0:1.0: debounce: port 4: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:10.4: port 4 high speed ehci_hcd 0000:00:10.4: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 5-4: new high speed USB device using ehci_hcd and address 7 ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: port 4 high speed ehci_hcd 0000:00:10.4: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 5-4: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: port 4 high speed ehci_hcd 0000:00:10.4: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 5-4: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 4 high speed ehci_hcd 0000:00:10.4: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 5-4: new high speed USB device using ehci_hcd and address 8 ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: port 4 high speed ehci_hcd 0000:00:10.4: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 5-4: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0in 3strikes ehci_hcd 0000:00:10.4: port 4 high speed ehci_hcd 0000:00:10.4: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 5-4: device descriptor read/64, error -71 ehci_hcd 0000:00:10.4: port 4 high speed ehci_hcd 0000:00:10.4: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 5-4: new high speed USB device using ehci_hcd and address 9 ehci_hcd 0000:00:10.4: devpath 4 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0out 3strikes usb 5-4: device not accepting address 9, error -71 ehci_hcd 0000:00:10.4: port 4 high speed ehci_hcd 0000:00:10.4: GetStatus port 4 status 001005 POWER sig=se0 PE CONNECT usb 5-4: new high speed USB device using ehci_hcd and address 10 ehci_hcd 0000:00:10.4: devpath 4 ep0out 3strikes ehci_hcd 0000:00:10.4: devpath 4 ep0out 3strikes usb 5-4: device not accepting address 10, error -71 Nothing else special happens if I load/reload *_hcd module in different orders. Mostly, just seems the same as before. I also confirm this. This bug has been sitting around for a lot versions before... I don't know if this is a BIOS problem or just driver bug. Linux azul1 2.6.16-gentoo-r1 #1 SMP PREEMPT Mon Apr 24 20:59:35 CEST 2006 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4200+ GNU/Linux here Wesley, do you have _any_ high-speed devices that work with that motherboard? If not, then blame the EHCI hardware. As you told in comment #29 my post is more related to bug #6201 this seems to be the right place to post because hardware is exactly that now (nforce 4). I have to say that the bug also happened with nforce2 and others. Will post there, then. Thank you so much and sorry. nf4 chipsets have a bug which would cause this for > 2GB of ram (less in some cases) if some people are seeing that it might be worth splitting that out as a separate bug both dmesg attachments (7410 and 7701) have PCI: Via IRQ fixup for blabla, from bla to bla Please try this patch http://lkml.org/lkml/diff/2006/9/7/235/1 (new VIA IRQ quirk behaviour change) and report the results I am the original submitter for this issue. Unfortunately, I won't be able to do more debug on this issue because the system in question just bit the dust a couple weeks ago (simultaneously, a heatsink spontaneously popped off one of the chips on the motherboard, instantly frying it, and the NVIDIA card's fan *launched* itself out of it's axle, off the card and bounced around the case. I wish I was kidding, but I'm not.) Anyway, I regretfully don't have any way to keep testing this, unless my new AMD64 system (not live yet) has this same issue with USB. I have the same problem on an ASUS A8V Deluxe(VIA AGP). An external usb HD will not work without removing the ehci_hcd module. Used bootable disc SimplyMEPIS_3.4.3rc3.iso kernel 2.6.15-1586tsc and the external drive worked fine. grepping the /boot/config... file showed CONFIG_USB_EHCI_HCD=y The uhci_hcd and others were modules. John, How much memory do you have in this system? 1 GIG I just notice I fixed my problem <a href="#c23">comment #23</a> buying a new USB Cable that supports high speed (USB2.0 - 480 Mb/s). My original cable was probably USB1.1 - 12 Mb/s. Maybe it can help someone. I have the same problem. Kernel 2.6.22-r1 It doesn't matter if I try the gentoo or vanilla-sources of kernel 2.6.22-r1. I know the mp3 player worked before on a diffrent system (Pentium III, PIIX4E chipset) cat /proc/bus/usb/devices: T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 4 B: Alloc= 12/900 us ( 1%), #Int= 1, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.22-gentoo-r1 ohci_hcd S: Product=OHCI Host Controller S: SerialNumber=0000:00:02.1 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=03 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 2 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0d8c ProdID=0201 Rev= 0.10 S: Product=PnP Audio Device C:* #Ifs= 3 Cfg#= 1 Atr=80 MxPwr=500mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=01(audio) Sub=01 Prot=00 Driver=snd-usb-audio E: Ad=81(I) Atr=03(Int.) MxPS= 3 Ivl=1ms I:* If#= 1 Alt= 0 #EPs= 0 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio I: If#= 1 Alt= 1 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio E: Ad=06(O) Atr=09(Isoc) MxPS= 784 Ivl=1ms I: If#= 1 Alt= 2 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio E: Ad=06(O) Atr=09(Isoc) MxPS= 196 Ivl=1ms I: If#= 1 Alt= 3 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio E: Ad=06(O) Atr=09(Isoc) MxPS= 392 Ivl=1ms I: If#= 1 Alt= 4 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio E: Ad=06(O) Atr=09(Isoc) MxPS= 584 Ivl=1ms I: If#= 1 Alt= 5 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio E: Ad=06(O) Atr=09(Isoc) MxPS= 392 Ivl=1ms I:* If#= 2 Alt= 0 #EPs= 0 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio I: If#= 2 Alt= 1 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio E: Ad=85(I) Atr=05(Isoc) MxPS= 200 Ivl=1ms T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 4 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.22-gentoo-r1 ohci_hcd S: Product=OHCI Host Controller S: SerialNumber=0000:00:02.0 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=12 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=16 #Cfgs= 1 P: Vendor=04e8 ProdID=9826 Rev= 1.00 S: Manufacturer=NewTech Inc. S: Product=USB Mass Storage Device 2.0 C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=200mA I:* If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=03(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=81(I) Atr=03(Int.) MxPS= 64 Ivl=255ms lspci: 00:00.0 Host bridge: nVidia Corporation nForce3 250Gb Host Bridge (rev a1) 00:01.0 ISA bridge: nVidia Corporation nForce3 250Gb LPC Bridge (rev a2) 00:01.1 SMBus: nVidia Corporation nForce 250Gb PCI System Management (rev a1) 00:02.0 USB Controller: nVidia Corporation CK8S USB Controller (rev a1) 00:02.1 USB Controller: nVidia Corporation CK8S USB Controller (rev a1) 00:02.2 USB Controller: nVidia Corporation nForce3 EHCI USB 2.0 Controller (rev a2) 00:05.0 Bridge: nVidia Corporation CK8S Ethernet Controller (rev a2) 00:08.0 IDE interface: nVidia Corporation CK8S Parallel ATA Controller (v2.5) (rev a2) 00:0b.0 PCI bridge: nVidia Corporation nForce3 250Gb AGP Host to PCI Bridge (rev a2) 00:0e.0 PCI bridge: nVidia Corporation nForce3 250Gb PCI-to-PCI Bridge (rev a2) 00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 01:00.0 VGA compatible controller: nVidia Corporation NV15 [GeForce2 GTS/Pro] (rev a3) lsusb: Bus 003 Device 002: ID 0d8c:0201 C-Media Electronics, Inc. Bus 003 Device 001: ID 0000:0000 Bus 001 Device 003: ID 04e8:9826 Samsung Electronics Co., Ltd Bus 001 Device 001: ID 0000:0000 dmesg debug output: hub 1-0:1.0: state 7 ports 8 chg 0000 evt 0002 ehci_hcd 0000:00:02.2: GetStatus port 1 status 001803 POWER sig=j CSC CONNECT hub 1-0:1.0: port 1, status 0501, change 0001, 480 Mb/s hub 1-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x501 ehci_hcd 0000:00:02.2: port 1 full speed --> companion ehci_hcd 0000:00:02.2: GetStatus port 1 status 003001 POWER OWNER sig=se0 CONNECT ohci_hcd 0000:00:02.0: auto-wakeup root hub hub 1-0:1.0: port 1 not reset yet, waiting 50ms ehci_hcd 0000:00:02.2: GetStatus port 1 status 003802 POWER OWNER sig=j CSC hub 1-0:1.0: state 7 ports 8 chg 0000 evt 0002 hub 2-0:1.0: state 7 ports 4 chg 0000 evt 0002 ohci_hcd 0000:00:02.0: GetStatus roothub.portstatus [0] = 0x00010101 CSC PPS CCS hub 2-0:1.0: port 1, status 0101, change 0001, 12 Mb/s hub 2-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x101 ohci_hcd 0000:00:02.0: GetStatus roothub.portstatus [0] = 0x00100103 PRSC PPS PES CCS usb 2-1: new full speed USB device using ohci_hcd and address 2 ohci_hcd 0000:00:02.0: GetStatus roothub.portstatus [0] = 0x00100103 PRSC PPS PES CCS usb 2-1: ep0 maxpacket = 16 usb 2-1: default language 0x0409 usb 2-1: new device strings: Mfr=1, Product=2, SerialNumber=0 usb 2-1: Product: USB Mass Storage Device 2.0 usb 2-1: Manufacturer: NewTech Inc. usb 2-1: uevent usb 2-1: usb_probe_device usb 2-1: configuration #1 chosen from 1 choice usb 2-1: adding 2-1:1.0 (config #1, interface 0) usb 2-1:1.0: uevent usb 2-1:1.0: uevent usb-storage 2-1:1.0: usb_probe_interface usb-storage 2-1:1.0: usb_probe_interface - got id usb-storage: USB Mass Storage device detected usb-storage: -- associate_dev usb-storage: Vendor: 0x04e8, Product: 0x9826, Revision: 0x0100 usb-storage: Interface Subclass: 0x06, Protocol: 0x50 usb-storage: Transport: Bulk usb-storage: Protocol: Transparent SCSI scsi0 : SCSI emulation for USB Mass Storage devices usb-storage: *** thread sleeping. usb-storage: device found at 2 usb-storage: waiting for device to settle before scanning drivers/usb/core/inode.c: creating file '002' hub 2-0:1.0: state 7 ports 4 chg 0000 evt 0002 hub 2-0:1.0: state 7 ports 4 chg 0000 evt 0002 ohci_hcd 0000:00:02.0: GetStatus roothub.portstatus [0] = 0x00030100 PESC CSC PPS hub 2-0:1.0: port 1, status 0100, change 0003, 12 Mb/s usb 2-1: USB disconnect, address 2 usb 2-1: unregistering device usb 2-1: usb_disable_device nuking all URBs usb 2-1: unregistering interface 2-1:1.0 usb_endpoint usbdev2.2_ep82: ep_device_release called for usbdev2.2_ep82 usb_endpoint usbdev2.2_ep03: ep_device_release called for usbdev2.2_ep03 usb_endpoint usbdev2.2_ep81: ep_device_release called for usbdev2.2_ep81 usb-storage: storage_disconnect() called usb-storage: usb_stor_stop_transport called usb-storage: -- usb_stor_release_resources usb-storage: -- sending exit command to thread usb-storage: -- dissociate_dev usb-storage: *** thread awakened. usb-storage: -- exiting usb 2-1:1.0: uevent usb 2-1:1.0: uevent usb_endpoint usbdev2.2_ep00: ep_device_release called for usbdev2.2_ep00 usb 2-1: uevent hub 2-0:1.0: debounce: port 1: total 100ms stable 100ms status 0x100 ohci_hcd 0000:00:02.0: auto-stop root hub usb_endpoint usbdev3.2_ep85: ep_device_release called for usbdev3.2_ep85 usb_endpoint usbdev3.2_ep06: ep_device_release called for usbdev3.2_ep06 usb_endpoint usbdev3.2_ep85: ep_device_release called for usbdev3.2_ep85 usb_endpoint usbdev3.2_ep06: ep_device_release called for usbdev3.2_ep06 Created attachment 12067 [details] Try to fix EHCI speed detection rick4711: Take a look at this email message: http://marc.info/?l=linux-usb-devel&m=118461858028785&w=2 You can also try the attached patch for 2.6.22. I have applied the patch for "ehci-hub.c" and commented out the lines as explained in "http://marc.info/?l=linux-usb-devel&m=118461858028785&w=2" This made no difference for me. I have also tried to compile EHCI_HCD inside the kernel and OHCI_HCD as a module, which made no difference either. I have disabled IRQ_BALANCING with the same effect. Have you any other hints for me? Come to think of it, the EHCI hardware in that email thread is different from yours anyway. His is by Philips and yours is by nVidia. Are you certain there really is a problem? The log you posted didn't include any line saying "not running at top speed; connect to a high speed hub". Perhaps your device really isn't high speed. Or perhaps it is no longer operating properly. What does lsusb -v show for the device (be sure to run it as root)? I thought it is the same problem, as the temporary solution to remove the EHCI_HCD module is the same. My problem is not a speed problem, but that the device is not given a device node (when EHCI_HCD is loaded together with OHCI_HCD). Thank you for your patience. Output of lsusb -v Bus 001 Device 002: ID 04e8:9826 Samsung Electronics Co., Ltd Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 16 idVendor 0x04e8 Samsung Electronics Co., Ltd idProduct 0x9826 bcdDevice 1.00 iManufacturer 1 NewTech Inc. iProduct 2 USB Mass Storage Device 2.0 iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 39 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 MaxPower 200mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 3 bInterfaceClass 8 Mass Storage bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 Bulk (Zip) iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 255 That's what you get for trying to hijack someone else's bug report. No, it is not the same problem, even if the workaround is the same. Your debugging dmesg log in comment #59 doesn't include timestamps so I can't tell what's going on. Can you do it again with CONFIG_PRINTK_TIME enabled? And this time _attach_ it to the bug report instead of pasting it inline. Created attachment 12110 [details]
Dmesg output with CONFIG_PRINTK enabled
At this moment both modules (EHCI_HCD and OHCI_HCD) are loaded,
with the result that the mp3 player does not get a device node.
The log doesn't show any errors, unforunately. It looks exactly as if you plugged in the mp3 player and then unplugged it about 5 seconds later, before the device node was created. Did you in fact leave it plugged in longer than that? The next step is to use usbmon and collect a log for bus 2. You'll find instructions in the kernel source file Documentation/usb/usbmon.txt. (And of course this should be done with both ehci-hcd and ohci-hcd loaded.) Something strange is happening here. I was able to get the mp3 player detected a few times out of more a dozen trials. The only thing I have done is plugging the device in. Both hcd modules were loaded. I haven't even rebooted my system during that time. I have no idea why. I have attached several usbmon logfiles. At first the device wasn't detected (usbmon.log), than it was suddenly detected (usbmon_ok.log) and now I can't get it to work (usbmon2.log) again. According to "cat /proc/bus/usb/devices" the device is connected to bus 1 now, also I haven't changed the USB port at this time. Created attachment 12121 [details]
usbmon2.log
Created attachment 12122 [details]
usbmon.log
Created attachment 12123 [details]
usbmon_ok.log
(In reply to comment #66) > plugged in the mp3 player and then unplugged it about 5 seconds later, before > the device node was created. Did you in fact leave it plugged in longer than > that? Yes I did. Bus 1 is what it should be. Don't worry about the bus numbering; it depends on the order in which you load ohci-hcd and ehci-hcd. You can always find out which is which by looking in /proc/bus/usb/devices. This behavior is indeed strange. I'd be inclined to call it a hardware problem except for the fact that the problem occurs just a few milliseconds before the device node creation is about to start. That has been the case in each of the error logs. So okay, try this: Add a line to /etc/modprobe.conf saying: options usb-storage delay_use=1 Then rmmod usb-storage, plug in the device, see what happens, and attach a usbmon log if it fails again. If that doesn't work, try changing the 1 above to 0 and repeat. I have good news! Adding "options usb-storage delay_use=1" to modprobe.conf fixes the problem once for all. Therefore I had to compile "usb-storage" as a kernel module. Can I apply this option also, when usb-storage is compiled inside the kernel? I have not found a kernel parameter which fits to your recommendation. Is this now a kernel or a hardware issue? Thank you very much for your help and patience! > Therefore I had to compile "usb-storage" as a kernel module. Can I
> apply this option also, when usb-storage is compiled inside the
> kernel?
on the kernel command use "add usb_storage.delay_use=1"
Except that you shouldn't put the word "add" on the kernel command line. Just "usb_storage.delay_use=1". You can even put 0 there instead of 1; it ought to work okay. The reason for the delay is that a few devices don't work properly without it, but most do. In your case it seems that the dock automatically disconnects a device if there has been no activity for 5 seconds, so usb-storage's default 5-second delay got you into trouble. As far as I can tell, this is a hardware issue, not software. Dave, this bug report has gotten out of hand. You'd be justified at this point in either resolving or rejecting it. Re: closing this bug I am the original submitter of this bug. As I posted a while back, I no longer have the computer that I originally had this issue with. So I am fine with this bug being closed out (especially since being on the CC as submitter no longer is useful for me). I'd think other's problems that are similar but slightly different should probably be posted in their own bugs reports, but I guess it's up to you guys. =) Since the bug became polluted and unclear, closing the bug. Please you believe your problem still exists please open new reports and they will be looked at individually. |