EHCI Configuration Errors Cause USB Errors (Mouse, etc)

Bug #49367 reported by Steve Beamer
6
Affects Status Importance Assigned to Milestone
linux-source-2.6.15 (Ubuntu)
Fix Released
Undecided
Ben Collins

Bug Description

Binary package hint: linux-image-2.6.15-23-386

High speed usb bus resetting routinely on some hardware in kernel 2.6.15-23-386. Device will not accept IRQ assigmnent (device not accepting address 3, error -110)

I found the problem to be in the configuration of EHCI when I compared the new config file to the previous breezy config file (2.6.12-10-386)
 #
 # USB support
@@ -2648,8 +2871,9 @@
 # USB Host Controller Drivers
 #
 CONFIG_USB_EHCI_HCD=m
-CONFIG_USB_EHCI_SPLIT_ISO=y
-CONFIG_USB_EHCI_ROOT_HUB_TT=y
+# CONFIG_USB_EHCI_SPLIT_ISO is not set
+# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
+# CONFIG_USB_ISP116X_HCD is not set
 CONFIG_USB_OHCI_HCD=m
 # CONFIG_USB_OHCI_BIG_ENDIAN is not set
 CONFIG_USB_OHCI_LITTLE_ENDIAN=y
@@ -2660,17 +2884,16 @@
 #

The new config that worked for me to solve the problem is (vanilla 2.6.16.20 kernel):

#
# USB support
#
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB=m
# CONFIG_USB_DEBUG is not set

#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
# CONFIG_USB_BANDWIDTH is not set
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_SUSPEND is not set
# CONFIG_USB_OTG is not set

#
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_EHCI_SPLIT_ISO=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
# CONFIG_USB_ISP116X_HCD is not set
CONFIG_USB_OHCI_HCD=m
# CONFIG_USB_OHCI_BIG_ENDIAN is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_UHCI_HCD=m
CONFIG_USB_SL811_HCD=m

Changed in linux-source-2.6.15:
assignee: nobody → ben-collins
status: Unconfirmed → Fix Committed
Changed in linux-source-2.6.15:
status: Fix Committed → Fix Released
Revision history for this message
Robert Penz (robert-penz-name) wrote :
Download full text (4.8 KiB)

I've a similar problem but on my computer its just the other
way round. With 2.6.15-23-386 its working on my VIA EPIA board and with
2.6.15-26-386 it stopped. So I decided to reopen this bug.

Here are some log entries with the 2.6.15-26-386 kernel:

Jul 28 00:06:53 jumpgate kernel: [17179878.780000] usb 1-2: new high speed USB device using ehci_hcd and address 2
Jul 28 00:06:54 jumpgate kernel: [17179879.780000] ehci_hcd 0000:00:10.3: Unlink after no-IRQ? Controller is probably using the wrong IRQ.
Jul 28 00:07:05 jumpgate kernel: [17179890.324000] usb 1-2: device not accepting address 2, error -110
Jul 28 00:07:05 jumpgate kernel: [17179890.448000] usb 1-2: new high speed USB device using ehci_hcd and address 3
Jul 28 00:07:16 jumpgate kernel: [17179901.992000] usb 1-2: device not accepting address 3, error -110
Jul 28 00:07:17 jumpgate kernel: [17179902.108000] usb 1-2: new high speed USB device using ehci_hcd and address 4
Jul 28 00:07:27 jumpgate kernel: [17179912.532000] usb 1-2: device not accepting address 4, error -110
Jul 28 00:07:27 jumpgate kernel: [17179912.648000] usb 1-2: new high speed USB device using ehci_hcd and address 5
Jul 28 00:07:38 jumpgate kernel: [17179923.072000] usb 1-2: device not accepting address 5, error -110

If I unload the ehci_hcd modul the dvd writer is accessable at once

Jul 28 16:08:22 jumpgate kernel: [17237138.096000] ehci_hcd 0000:00:10.3: remove, state 1
Jul 28 16:08:22 jumpgate kernel: [17237138.096000] usb usb1: USB disconnect, address 1
Jul 28 16:08:22 jumpgate kernel: [17237138.100000] ehci_hcd 0000:00:10.3: USB bus 1 deregistered
Jul 28 16:08:22 jumpgate kernel: [17237138.100000] ACPI: PCI interrupt for device 0000:00:10.3 disabled
Jul 28 16:08:22 jumpgate kernel: [17237138.340000] usb 2-2: new full speed USB device using uhci_hcd and address 2
Jul 28 16:08:23 jumpgate kernel: [17237138.664000] SCSI subsystem initialized
Jul 28 16:08:23 jumpgate kernel: [17237138.692000] Initializing USB Mass Storage driver...
Jul 28 16:08:23 jumpgate kernel: [17237138.696000] scsi0 : SCSI emulation for USB Mass Storage devices
Jul 28 16:08:23 jumpgate kernel: [17237138.696000] usb-storage: device found at 2
Jul 28 16:08:23 jumpgate kernel: [17237138.696000] usb-storage: waiting for device to settle before scanning
Jul 28 16:08:23 jumpgate kernel: [17237138.696000] usbcore: registered new driver usb-storage
Jul 28 16:08:23 jumpgate kernel: [17237138.696000] USB Mass Storage support registered.
Jul 28 16:08:28 jumpgate kernel: [17237143.732000] Vendor: HL-DT-ST Model: DVDRRW GSA-2164D Rev: 1.01
Jul 28 16:08:28 jumpgate kernel: [17237143.732000] Type: CD-ROM ANSI SCSI revision: 00
Jul 28 16:08:28 jumpgate kernel: [17237143.744000] usb-storage: device scan complete
Jul 28 16:08:28 jumpgate kernel: [17237143.832000] sr0: scsi3-mmc drive: 48x/48x writer dvd-ram cd/rw xa/form2 cdda tray
Jul 28 16:08:28 jumpgate kernel: [17237143.836000] Uniform CD-ROM driver Revision: 3.20
Jul 28 16:08:28 jumpgate kernel: [17237143.836000] sr 0:0:0:0: Attached scsi CD-ROM sr0
Jul 28 16:08:28 jumpgate kernel: [17237143.872000] sr 0:0:0:0: Attached scsi generic sg0 type 5

on 2.6.15-23-386 it look...

Read more...

Revision history for this message
Tristan BENOIST (tristan-benoist) wrote :

To temporary solve the problem, disable USB 2.0 by this way :
$sudo modprobe -r ehci_hcd
$sudo echo "blacklist ehci_hcd" > /etc/modprobe.d/blacklist-ehci

To get USB 2.0 back :
$sudo rm /etc/modprobe.d/blacklist-ehci
$sudo modprobe ehci-hcd

Waiting for a new Kernel image. It seems that the experimental individual usb suspend is the source of this bug.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.