diff options
author | Roger Quadros <rogerq@ti.com> | 2015-09-21 17:46:13 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-10-22 14:37:51 -0700 |
commit | 5eaec968f3377c20e7da49f8e3aef1d874a0591b (patch) | |
tree | 856c3a6fa984a616748b584fd379a21387db4c19 | |
parent | 0bccecfc32cb896d49ebd226b22cf6bfed45b35d (diff) | |
download | lwn-5eaec968f3377c20e7da49f8e3aef1d874a0591b.tar.gz lwn-5eaec968f3377c20e7da49f8e3aef1d874a0591b.zip |
usb: xhci: Clear XHCI_STATE_DYING on start
commit e5bfeab0ad515b4f6df39fe716603e9dc6d3dfd0 upstream.
For whatever reason if XHCI died in the previous instant
then it will never recover on the next xhci_start unless we
clear the DYING flag.
Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/usb/host/xhci.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index 1f901fc25590..1a22d186bef7 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c @@ -139,7 +139,8 @@ static int xhci_start(struct xhci_hcd *xhci) "waited %u microseconds.\n", XHCI_MAX_HALT_USEC); if (!ret) - xhci->xhc_state &= ~XHCI_STATE_HALTED; + xhci->xhc_state &= ~(XHCI_STATE_HALTED | XHCI_STATE_DYING); + return ret; } |