summaryrefslogtreecommitdiff
path: root/drivers/usb
diff options
context:
space:
mode:
authorcaizhiyong <caizhiyong@huawei.com>2013-07-26 11:12:14 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-07-27 00:55:21 +0400
commit435932f2c75efcdd07273a437b9be32647d56d73 (patch)
treea4cd7c9c3055073ad1c15b032fae4928fc294747 /drivers/usb
parent4e682bbd32708f3eab55b66960933b36bc00e31a (diff)
downloadlinux-435932f2c75efcdd07273a437b9be32647d56d73.tar.xz
USB: ohci_usb warn "irq nobody cared" on shutdown
When ohci-hcd is shutting down, call ohci_usb_reset reset ohci-hcd, the root hub generate an interrupt, but ohci->rh_state is OHCI_RH_HALTED, and ohci_irq ignore the interrupt, the kernel trigger warning "irq nobody cared". ehci-hcd is first disable interrupts, then reset ehci. This patch disable ohci interrupt before reset ohci. The patch is tested at the arm cortex-a9 demo board. Signed-off-by: caizhiyong <caizhiyong@huawei.com> Reviewed-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/host/ohci-hcd.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
index a9d3437da220..8f6b695af6a4 100644
--- a/drivers/usb/host/ohci-hcd.c
+++ b/drivers/usb/host/ohci-hcd.c
@@ -938,8 +938,8 @@ static void ohci_stop (struct usb_hcd *hcd)
if (quirk_nec(ohci))
flush_work(&ohci->nec_work);
- ohci_usb_reset (ohci);
ohci_writel (ohci, OHCI_INTR_MIE, &ohci->regs->intrdisable);
+ ohci_usb_reset(ohci);
free_irq(hcd->irq, hcd);
hcd->irq = 0;