From: David Brownell Date: Fri, 23 Dec 2005 01:05:18 +0000 (-0800) Subject: [PATCH] USB: ehci fix driver model wakeup flags X-Git-Tag: v2.6.16-rc1~474^2~22^2~10^2~68 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d97cc2f2e938547a47daef29bc10ab38600a3310;p=linux-2.6 [PATCH] USB: ehci fix driver model wakeup flags 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 Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c index dd87102326..b5b57e957e 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c @@ -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? */