diff options
| -rw-r--r-- | drivers/usb/host/xhci-ring.c | 11 | ||||
| -rw-r--r-- | drivers/usb/host/xhci.c | 13 |
2 files changed, 0 insertions, 24 deletions
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c index 25f522b09dd9..e32029a31ca4 100644 --- a/drivers/usb/host/xhci-ring.c +++ b/drivers/usb/host/xhci-ring.c | |||
| @@ -913,17 +913,6 @@ void xhci_stop_endpoint_command_watchdog(unsigned long arg) | |||
| 913 | spin_lock_irqsave(&xhci->lock, flags); | 913 | spin_lock_irqsave(&xhci->lock, flags); |
| 914 | 914 | ||
| 915 | ep->stop_cmds_pending--; | 915 | ep->stop_cmds_pending--; |
| 916 | if (xhci->xhc_state & XHCI_STATE_REMOVING) { | ||
| 917 | spin_unlock_irqrestore(&xhci->lock, flags); | ||
| 918 | return; | ||
| 919 | } | ||
| 920 | if (xhci->xhc_state & XHCI_STATE_DYING) { | ||
| 921 | xhci_dbg_trace(xhci, trace_xhci_dbg_cancel_urb, | ||
| 922 | "Stop EP timer ran, but another timer marked " | ||
| 923 | "xHCI as DYING, exiting."); | ||
| 924 | spin_unlock_irqrestore(&xhci->lock, flags); | ||
| 925 | return; | ||
| 926 | } | ||
| 927 | if (!(ep->stop_cmds_pending == 0 && (ep->ep_state & EP_HALT_PENDING))) { | 916 | if (!(ep->stop_cmds_pending == 0 && (ep->ep_state & EP_HALT_PENDING))) { |
| 928 | xhci_dbg_trace(xhci, trace_xhci_dbg_cancel_urb, | 917 | xhci_dbg_trace(xhci, trace_xhci_dbg_cancel_urb, |
| 929 | "Stop EP timer ran, but no command pending, " | 918 | "Stop EP timer ran, but no command pending, " |
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index 0c8deb9ed42d..9a0ec116654a 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c | |||
| @@ -1534,19 +1534,6 @@ int xhci_urb_dequeue(struct usb_hcd *hcd, struct urb *urb, int status) | |||
| 1534 | xhci_urb_free_priv(urb_priv); | 1534 | xhci_urb_free_priv(urb_priv); |
| 1535 | return ret; | 1535 | return ret; |
| 1536 | } | 1536 | } |
| 1537 | if ((xhci->xhc_state & XHCI_STATE_DYING) || | ||
| 1538 | (xhci->xhc_state & XHCI_STATE_HALTED)) { | ||
| 1539 | xhci_dbg_trace(xhci, trace_xhci_dbg_cancel_urb, | ||
| 1540 | "Ep 0x%x: URB %p to be canceled on " | ||
| 1541 | "non-responsive xHCI host.", | ||
| 1542 | urb->ep->desc.bEndpointAddress, urb); | ||
| 1543 | /* Let the stop endpoint command watchdog timer (which set this | ||
| 1544 | * state) finish cleaning up the endpoint TD lists. We must | ||
| 1545 | * have caught it in the middle of dropping a lock and giving | ||
| 1546 | * back an URB. | ||
| 1547 | */ | ||
| 1548 | goto done; | ||
| 1549 | } | ||
| 1550 | 1537 | ||
| 1551 | ep_index = xhci_get_endpoint_index(&urb->ep->desc); | 1538 | ep_index = xhci_get_endpoint_index(&urb->ep->desc); |
| 1552 | ep = &xhci->devs[urb->dev->slot_id]->eps[ep_index]; | 1539 | ep = &xhci->devs[urb->dev->slot_id]->eps[ep_index]; |
