projects
/
platform
/
kernel
/
linux-rpi.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
35f76e8
)
USB: xhci: Stop debugging polling loop when HC dies.
author
Sarah Sharp
<sarah.a.sharp@linux.intel.com>
Wed, 16 Sep 2009 23:42:30 +0000
(16:42 -0700)
committer
Greg Kroah-Hartman
<gregkh@suse.de>
Fri, 9 Oct 2009 20:52:06 +0000
(13:52 -0700)
If the host controller card is removed from the system, stop the timer
function to debug the xHCI rings.
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/host/xhci-hcd.c
patch
|
blob
|
history
diff --git
a/drivers/usb/host/xhci-hcd.c
b/drivers/usb/host/xhci-hcd.c
index 99911e727e0b7950e4a11dec17bb17f08151e5e4..8719a3f6851d0c8465e3bca972e3b408ddf292a8 100644
(file)
--- a/
drivers/usb/host/xhci-hcd.c
+++ b/
drivers/usb/host/xhci-hcd.c
@@
-335,6
+335,12
@@
void xhci_event_ring_work(unsigned long arg)
spin_lock_irqsave(&xhci->lock, flags);
temp = xhci_readl(xhci, &xhci->op_regs->status);
xhci_dbg(xhci, "op reg status = 0x%x\n", temp);
+ if (temp == 0xffffffff) {
+ xhci_dbg(xhci, "HW died, polling stopped.\n");
+ spin_unlock_irqrestore(&xhci->lock, flags);
+ return;
+ }
+
temp = xhci_readl(xhci, &xhci->ir_set->irq_pending);
xhci_dbg(xhci, "ir_set 0 pending = 0x%x\n", temp);
xhci_dbg(xhci, "No-op commands handled = %d\n", xhci->noops_handled);