[PATCH] USB: ehci fix driver model wakeup flags
authorDavid Brownell <david-b@pacbell.net>
Fri, 23 Dec 2005 01:05:18 +0000 (17:05 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 4 Jan 2006 21:48:30 +0000 (13:48 -0800)
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@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/host/ehci-hcd.c

index dd871023265cd1bc5e08d7b3cc8d0a528cf61f11..b5b57e957e5f8b689747f3e4b36c48eb78012947 100644 (file)
@@ -624,7 +624,7 @@ static irqreturn_t ehci_irq (struct usb_hcd *hcd, struct pt_regs *regs)
        }
 
        /* 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? */