lkml.org 
[lkml]   [2004]   [Jul]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH] proper bios handoff in ehci-hcd
> Stuart Hayes here at Dell has identified this or/and mix-up in the
> ehci-hcd driver. Because of this, ehci-hcd is not properly released by
> BIOSes supporting full 2.0 and port behavior can then become erratic.

This change actually breaks USB altogether on an Asus P4P800, as I noticed when I updated to 2.6.8-rc1.

I get the following messages at boot:

-----
Jul 12 23:34:06 willdesktop kernel: ehci_hcd 0000:00:1d.7: BIOS handoff failed (104, 1010001)
Jul 12 23:34:06 willdesktop kernel: ehci_hcd 0000:00:1d.7: can't reset
Jul 12 23:34:06 willdesktop kernel: ehci_hcd 0000:00:1d.7: init 0000:00:1d.7 fail, -95
Jul 12 23:34:06 willdesktop kernel: ehci_hcd: probe of 0000:00:1d.7 failed with error -95
-----

I've seen a few other people with this problem, and reversing the change makes everything work perfectly again, maybe this was the cause of it all? (sorry if I missed the fix before)

(included patch reverses it)

-Will

-----------------------------------------------------------------------------


diff -Nru a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
--- a/drivers/usb/host/ehci-hcd.c 2004-07-13 01:09:00.000000000 -0400
+++ b/drivers/usb/host/ehci-hcd.c 2004-07-13 01:08:32.000000000 -0400
@@ -293,7 +293,7 @@
struct pci_dev *pdev = to_pci_dev(ehci->hcd.self.controller);

/* request handoff to OS */
- cap |= 1 << 24;
+ cap &= 1 << 24;
pci_write_config_dword(pdev, where, cap);

/* and wait a while for it to happen */[unhandled content-type:application/x-pkcs7-signature]
\
 
 \ /
  Last update: 2005-03-22 14:04    [W:0.238 / U:0.212 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site