USB: xhci: Stop debugging polling loop when HC dies.
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>
This commit is contained in:
Родитель
35f76e897d
Коммит
e4ab05df57
|
@ -335,6 +335,12 @@ void xhci_event_ring_work(unsigned long arg)
|
||||||
spin_lock_irqsave(&xhci->lock, flags);
|
spin_lock_irqsave(&xhci->lock, flags);
|
||||||
temp = xhci_readl(xhci, &xhci->op_regs->status);
|
temp = xhci_readl(xhci, &xhci->op_regs->status);
|
||||||
xhci_dbg(xhci, "op reg status = 0x%x\n", temp);
|
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);
|
temp = xhci_readl(xhci, &xhci->ir_set->irq_pending);
|
||||||
xhci_dbg(xhci, "ir_set 0 pending = 0x%x\n", temp);
|
xhci_dbg(xhci, "ir_set 0 pending = 0x%x\n", temp);
|
||||||
xhci_dbg(xhci, "No-op commands handled = %d\n", xhci->noops_handled);
|
xhci_dbg(xhci, "No-op commands handled = %d\n", xhci->noops_handled);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче