Bug 6128 - Problem with kernel 2.6.15 and EHCI-HCD
Problem with kernel 2.6.15 and EHCI-HCD
Product: Drivers
Classification: Unclassified
Component: USB
i386 Linux
: P2 blocking
Assigned To: David Brownell
Depends on:
Blocks: USB
  Show dependency treegraph
Reported: 2006-02-24 09:35 UTC by Yaz
Modified: 2006-02-28 14:25 UTC (History)
3 users (show)

See Also:
Kernel Version: 2.6.15.x
Tree: Mainline
Regression: ---

experimental patch against 2.6.14-rc4 (707 bytes, patch)
2006-02-24 13:58 UTC, David Brownell
Details | Diff

Description Yaz 2006-02-24 09:35:58 UTC

I have a problem with the last stable version of linux (2.6.15.x) : it hangs at
boot while loading ehci_hcd.
The cursor is always blinking, but everything is stopped. There was no problem
with the kernel 2.6.14 and previous versions.

Here are the two last lines that appear on the screen :

ehci_hcd 0000:00:1d.7: EHCI Host Controller
ehci_hcd 0000:00:1d.7: debug port 1

Of course, I use vanilla sources with no patch. My motherboard is a MSI 865PE
Neo2-P, with an Intel 865PE chipset.
I have the newest BIOS.
There is something strange because I have exactly the same problem with FreeBSD
6 which also hangs while loading ehci...

It seems that I'm not the only one who have this problem :
But it hasn't been resolved.

I also tried with the 2.6.16-rc4 kernel and it's worse, it hangs before (I don't
remember where exactly).



(sorry for my english)
Comment 1 Greg Kroah-Hartman 2006-02-24 09:45:54 UTC
Where exactly does it hang in the 2.6.16-rc4 kernel?

And if you enable CONFIG_USB_DEBUG, does it help show more information?
Comment 2 Yaz 2006-02-24 10:52:53 UTC
With CONFIG_USB_DEBUG, and when I add "debug" in grub :

- With 2.6.15 :

ehci_hcd 0000:00:1d.7: EHCI Host Controller
ehci_hcd 0000:00:1d.7: reset hcs_params 0x104208 dbg=1 cc=4 pcc=2 ordered !ppc
ehci_hcd 0000:00:1d.7: reset hcc_params 6871 thresh 7 uframes 1024 64 bit addr
ehci_hcd 0000:00:1d.7: debug port 1
ehci_hcd 0000:00:1d.7: capability 0001 at 68

- With 2.6.16-rc4 :

0000:00:1d.0: uhci_check_and_reset_hc: legsup = 0x0030
0000:00:1d.0: Performing full reset
0000:00:1d.1: uhci_check_and_reset_hc: legsup = 0x0030
0000:00:1d.1: Performing full reset
0000:00:1d.2: uhci_check_and_reset_hc: legsup = 0x0030
0000:00:1d.2: Performing full reset
0000:00:1d.3: uhci_check_and_reset_hc: legsup = 0x0030
0000:00:1d.3: Performing full reset
Comment 3 Alan Stern 2006-02-24 13:20:37 UTC
Check and see if a BIOS update is available for your machine.  This type of
problem is caused by a BIOS bug.
Comment 4 Yaz 2006-02-24 13:30:15 UTC
I have already done the latest BIOS update.
There was no problem with Linux 2.6.14 and older versions.
Comment 5 David Brownell 2006-02-24 13:54:59 UTC
Re Comment #2, you appear to be saying that UHCI didn't 
come up on 2.6.15 while EHCI did (partly), and on 2.6.16-rc4 
it was EHCI that didn't while UHCI did.  That doesn't seem 
right; I suspect you edited important information out of the 
boot logs. 
Comment 6 David Brownell 2006-02-24 13:58:43 UTC
Created attachment 7468 [details]
experimental patch against 2.6.14-rc4

Try this against RC4.  This should pretty much finish morphing
the previous "early handoff" code for EHCI so it matches the
previous EHCI driver code, with the only notable difference
being the SMI now always being forcibly disabled.  (That previous
"early handoff" code was pretty buggy.)
Comment 7 Yaz 2006-02-24 14:24:23 UTC
This patch works !
Thanks !
Comment 8 Adrian Bunk 2006-02-28 14:25:52 UTC
The patch went into Linus' tree and will therefore be in 2.6.16-rc6.

Note You need to log in before you can comment on or make changes to this bug.