]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: xhci: Clear XHCI_STATE_DYING on start
authorRoger Quadros <rogerq@ti.com>
Mon, 21 Sep 2015 14:46:13 +0000 (17:46 +0300)
committerLuis Henriques <luis.henriques@canonical.com>
Mon, 19 Oct 2015 09:54:27 +0000 (10:54 +0100)
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>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
drivers/usb/host/xhci.c

index 7ce24229e8630d80f02b9ac0f5d1ab37ac77c7df..4170d913ee6e79787162f2f025c14e84fd6d54c5 100644 (file)
@@ -147,7 +147,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;
 }