From Bugzilla Helper: User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; H010818; .NET CLR 1.0.3705) Description of problem: Stuart Hayes has identified that the ehci-hcd driver does not properly implement BIOS handoff for systems which fully support USB 2.0. They have coded in an & when it should be an |. Here is the patch to resolve this. Please included this in RHEL3 U3 as our new platforms get very spotty USB port behavior without it. --- linux-2.4.21-15.EL/drivers/usb/host/ehci-hcd.c.orig 2004-06-05 03:12:18.000000000 -0500 +++ linux-2.4.21-15.EL/drivers/usb/host/ehci-hcd.c 2004-06-05 01:18:51.000000000 -0500 @@ -290,7 +290,7 @@ static int bios_handoff (struct ehci_hcd int msec = 500; /* request handoff to OS */ - cap &= 1 << 24; + cap |= 1 << 24; pci_write_config_dword (ehci->hcd.pdev, where, cap); /* and wait a while for it to happen */ Version-Release number of selected component (if applicable): 2.4.21-15.EL How reproducible: Always Steps to Reproduce: 1. Obtain system with full USB 2.0 bios support 2. Plug in USB keyboard 3. Note that on some ports the keyboard does not work Actual Results: USB 2.0 is not properly initialized. Expected Results: Everything works without a hitch. Additional info:
Woa, a typo in David-B's code. Good work, Gary.
Unfortunately, the U3 Beta freeze was today, but I do not remember the precise cutoff time. It will be clear by Friday if this has made the deadline.
A fix for this problem has just been committed to the RHEL3 U3 patch pool this evening (in kernel version 2.4.21-15.12.EL).
An errata has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2004-433.html
For me, this problem (or one very much like it) still occurs with 2.4.21-20.EL. For example: 4# modprobe ehci-hcd /lib/modules/2.4.21-20.EL/kernel/drivers/usb/host/ehci-hcd.o: init_module: No such device Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters. You may find more information in syslog or the output from dmesg /lib/modules/2.4.21-20.EL/kernel/drivers/usb/host/ehci-hcd.o: insmod /lib/modules/2.4.21-20.EL/kernel/drivers/usb/host/ehci-hcd.o failed /lib/modules/2.4.21-20.EL/kernel/drivers/usb/host/ehci-hcd.o: insmod ehci-hcd failed 5# /var/log/messages contains: Oct 11 12:18:58 tuolumne kernel: PCI: Found IRQ 11 for device 00:1d.7 Oct 11 12:18:58 tuolumne kernel: PCI: Sharing IRQ 11 with 03:0b.0 Oct 11 12:18:58 tuolumne kernel: ehci-hcd 00:1d.7: Intel Corp. 82801EB USB2 Oct 11 12:18:58 tuolumne kernel: ehci-hcd 00:1d.7: irq 11, pci mem fa053c00 Oct 11 12:18:58 tuolumne kernel: usb.c: new USB bus registered, assigned bus number 5 Oct 11 12:18:59 tuolumne kernel: ehci-hcd 00:1d.7: BIOS handoff failed (104, 1010001) Oct 11 12:18:59 tuolumne kernel: ehci-hcd 00:1d.7: remove state 0 Oct 11 12:18:59 tuolumne kernel: usb.c: USB bus 5 deregistered lspci is as follows: 6# lspci 00:00.0 Host bridge: Intel Corp. 82875P Memory Controller Hub (rev 02) 00:01.0 PCI bridge: Intel Corp. 82875P Processor to AGP Controller (rev 02) 00:03.0 PCI bridge: Intel Corp. 82875P Processor to PCI to CSA Bridge (rev 02) 00:1d.0 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #1 (rev 02)00:1d.1 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #2 (rev 02)00:1d.2 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #3 (rev 02)00:1d.3 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #4 (rev 02)00:1d.7 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (rev 02) 00:1e.0 PCI bridge: Intel Corp. 82801BA/CA/DB/EB/ER Hub interface to PCI Bridge (rev c2) 00:1f.0 ISA bridge: Intel Corp. 82801EB/ER (ICH5/ICH5R) LPC Bridge (rev 02) 00:1f.1 IDE interface: Intel Corp. 82801EB/ER (ICH5/ICH5R) Ultra ATA 100 Storage Controller (rev 02) 00:1f.3 SMBus: Intel Corp. 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02) 01:00.0 VGA compatible controller: nVidia Corporation NV25 [GeForce4 Ti 4200] (rev a3) 02:01.0 Ethernet controller: Intel Corp. 82547EI Gigabit Ethernet Controller (LOM) 03:03.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80) 03:0a.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 07) 03:0a.1 Input device controller: Creative Labs SB Live! MIDI/Game Port (rev 07) 03:0b.0 Ethernet controller: 3Com Corporation 3c905 100BaseTX [Boomerang] 03:0c.0 SCSI storage controller: Adaptec AHA-7850 (rev 01) 03:0d.0 SCSI storage controller: Adaptec AIC-7892A U160/m (rev 02) 7# Any suggestions? Thanks! Allen
Hello, Allen. Please open a new bug report with the information above (since the original bug was already fixed in RHEL3 U3). Thanks in advance. -ernie
I think new would be fine. We had a tracking of this particular regression in bug 127428, but that one was mixed with the crash in scan_async.
Hello,i have the same problem "ehci-hcd 00:03.3: BIOS handoff failed (112,1010001)" while the installation of the REDHAT 3 update 4 Enterprise linux. How can i solve this problem? thank Marco