diff options
Diffstat (limited to 'drivers/usb/host/xhci-ring.c')
-rw-r--r-- | drivers/usb/host/xhci-ring.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c index 3264d6275bf2..6bca2526d54a 100644 --- a/drivers/usb/host/xhci-ring.c +++ b/drivers/usb/host/xhci-ring.c | |||
@@ -819,8 +819,7 @@ void xhci_stop_endpoint_command_watchdog(unsigned long arg) | |||
819 | if (ret < 0) { | 819 | if (ret < 0) { |
820 | /* This is bad; the host is not responding to commands and it's | 820 | /* This is bad; the host is not responding to commands and it's |
821 | * not allowing itself to be halted. At least interrupts are | 821 | * not allowing itself to be halted. At least interrupts are |
822 | * disabled, so we can set HC_STATE_HALT and notify the | 822 | * disabled. If we call usb_hc_died(), it will attempt to |
823 | * USB core. But if we call usb_hc_died(), it will attempt to | ||
824 | * disconnect all device drivers under this host. Those | 823 | * disconnect all device drivers under this host. Those |
825 | * disconnect() methods will wait for all URBs to be unlinked, | 824 | * disconnect() methods will wait for all URBs to be unlinked, |
826 | * so we must complete them. | 825 | * so we must complete them. |
@@ -865,7 +864,6 @@ void xhci_stop_endpoint_command_watchdog(unsigned long arg) | |||
865 | } | 864 | } |
866 | } | 865 | } |
867 | spin_unlock(&xhci->lock); | 866 | spin_unlock(&xhci->lock); |
868 | xhci_to_hcd(xhci)->state = HC_STATE_HALT; | ||
869 | xhci_dbg(xhci, "Calling usb_hc_died()\n"); | 867 | xhci_dbg(xhci, "Calling usb_hc_died()\n"); |
870 | usb_hc_died(xhci_to_hcd(xhci)); | 868 | usb_hc_died(xhci_to_hcd(xhci)); |
871 | xhci_dbg(xhci, "xHCI host controller is dead.\n"); | 869 | xhci_dbg(xhci, "xHCI host controller is dead.\n"); |
@@ -2113,7 +2111,6 @@ irqreturn_t xhci_irq(struct usb_hcd *hcd) | |||
2113 | xhci_warn(xhci, "WARNING: Host System Error\n"); | 2111 | xhci_warn(xhci, "WARNING: Host System Error\n"); |
2114 | xhci_halt(xhci); | 2112 | xhci_halt(xhci); |
2115 | hw_died: | 2113 | hw_died: |
2116 | xhci_to_hcd(xhci)->state = HC_STATE_HALT; | ||
2117 | spin_unlock(&xhci->lock); | 2114 | spin_unlock(&xhci->lock); |
2118 | return -ESHUTDOWN; | 2115 | return -ESHUTDOWN; |
2119 | } | 2116 | } |