ChangeSet 1.1673.8.11, 2004/03/25 16:06:44-08:00, [EMAIL PROTECTED]
[PATCH] USB: fix osdl bugid 2006 (timer init and fault paths)
Need to initialize timers a bit earlier to handle
certain initialization faults.
OSDL bug 2006
Need to initialize some timers a bit earlier to clean up safely
after very early init HCD failures.
Those early init faults were needlessly mysterious since they
didn't emit diagnostics except at HCD discretion.
drivers/usb/core/hcd-pci.c | 5 ++++-
drivers/usb/host/ehci-hcd.c | 8 ++++----
2 files changed, 8 insertions(+), 5 deletions(-)
diff -Nru a/drivers/usb/core/hcd-pci.c b/drivers/usb/core/hcd-pci.c
--- a/drivers/usb/core/hcd-pci.c Wed Apr 14 14:39:31 2004
+++ b/drivers/usb/core/hcd-pci.c Wed Apr 14 14:39:31 2004
@@ -196,13 +196,16 @@
hcd->self.op = &usb_hcd_operations;
hcd->self.hcpriv = (void *) hcd;
hcd->self.release = &hcd_pci_release;
+ init_timer (&hcd->rh_timer);
INIT_LIST_HEAD (&hcd->dev_list);
usb_register_bus (&hcd->self);
- if ((retval = driver->start (hcd)) < 0)
+ if ((retval = driver->start (hcd)) < 0) {
+ dev_err (hcd->self.controller, "init error %d\n", retval);
usb_hcd_pci_remove (dev);
+ }
return retval;
}
diff -Nru a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
--- a/drivers/usb/host/ehci-hcd.c Wed Apr 14 14:39:31 2004
+++ b/drivers/usb/host/ehci-hcd.c Wed Apr 14 14:39:31 2004
@@ -374,6 +374,10 @@
u32 hcc_params;
u8 tempbyte;
+ init_timer (&ehci->watchdog);
+ ehci->watchdog.function = ehci_watchdog;
+ ehci->watchdog.data = (unsigned long) ehci;
+
/*
* hw default: 1K periodic list heads, one per frame.
* periodic_size can shrink by USBCMD update if hcc_params allows.
@@ -467,10 +471,6 @@
dbg_cmd (ehci, "init", temp);
/* set async sleep time = 10 us ... ? */
-
- init_timer (&ehci->watchdog);
- ehci->watchdog.function = ehci_watchdog;
- ehci->watchdog.data = (unsigned long) ehci;
/* wire up the root hub */
bus = hcd_to_bus (hcd);
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id70&alloc_id638&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel