From david-b@pacbell.net Wed Aug 31 11:05:49 2005 From: David Brownell Subject: USB: OHCI irq tweak Date: Wed, 31 Aug 2005 10:47:20 -0700 Cc: Greg KH Message-Id: <200508311047.20133.david-b@pacbell.net> Evidently there are some boards which care a lot about this, but as a rule it's been hard to notice. OHCI_INTR_RD wasn't always cleared in the ohci irq handler. On some systems this means certain remote wakeup scenarios could seem to hang (in an interrupt storm, RD never clearing). From: "William Morrow" Signed-off-by: Jordan Crouse Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman --- drivers/usb/host/ohci-hcd.c | 1 + 1 file changed, 1 insertion(+) --- gregkh-2.6.orig/drivers/usb/host/ohci-hcd.c 2005-09-12 11:01:58.000000000 -0700 +++ gregkh-2.6/drivers/usb/host/ohci-hcd.c 2005-09-12 11:02:01.000000000 -0700 @@ -719,6 +719,7 @@ static irqreturn_t ohci_irq (struct usb_ if (ints & OHCI_INTR_RD) { ohci_vdbg (ohci, "resume detect\n"); + ohci_writel (ohci, OHCI_INTR_RD, ®s->intrstatus); if (hcd->state != HC_STATE_QUIESCING) schedule_work(&ohci->rh_resume); }