Re: 2.6.15-rc5-mm3

From: David Brownell
Date: Thu Dec 22 2005 - 20:07:36 EST



> David, care to put a proper header on this and send it to me so I can
> add it to my tree?

Here you go!

On some systems, EHCI seems to be getting IRQs too early during driver
setup ... before the root hub is allocated, in particular, making trouble
for any code chasing down root hub pointers! In this case, it seems to
be safe to just ignore the root hub setting. Thanks to Rafael J. Wysocki
for getting this properly tested.

Signed-off-by: David Brownell <dbrownell@xxxxxxxxxxxxxxxxxxxxx>

--- g26.orig/drivers/usb/host/ehci-hcd.c 2005-12-22 16:48:57.000000000 -0800
+++ g26/drivers/usb/host/ehci-hcd.c 2005-12-22 16:57:52.000000000 -0800
@@ -617,7 +617,7 @@ static irqreturn_t ehci_irq (struct usb_
}

/* remote wakeup [4.3.1] */
- if ((status & STS_PCD) && device_may_wakeup(&hcd->self.root_hub->dev)) {
+ if (status & STS_PCD) {
unsigned i = HCS_N_PORTS (ehci->hcs_params);

/* resume root hub? */