summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorMathias Nyman <mathias.nyman@linux.intel.com>2014-11-18 11:27:12 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-11-22 07:34:20 -0800
commit8e71a322fdb127814bcba423a512914ca5bc6cf5 (patch)
tree83c3b89103bfa92a2e16cce6deb32d143c66a6e8 /net
parent9b41ebd3cf0f68d8cad779d3eeba336f78262e43 (diff)
downloadlinux-8e71a322fdb127814bcba423a512914ca5bc6cf5.tar.gz
linux-8e71a322fdb127814bcba423a512914ca5bc6cf5.tar.bz2
linux-8e71a322fdb127814bcba423a512914ca5bc6cf5.zip
USB: xhci: Reset a halted endpoint immediately when we encounter a stall.
If a device is halted and reuturns a STALL, then the halted endpoint needs to be cleared both on the host and device side. The host side halt is cleared by issueing a xhci reset endpoint command. The device side is cleared with a ClearFeature(ENDPOINT_HALT) request, which should be issued by the device driver if a URB reruen -EPIPE. Previously we cleared the host side halt after the device side was cleared. To make sure the host side halt is cleared in time we want to issue the reset endpoint command immedialtely when a STALL status is encountered. Otherwise we end up not following the specs and not returning -EPIPE several times in a row when trying to transfer data to a halted endpoint. Fixes: bcef3fd (USB: xhci: Handle errors that cause endpoint halts.) Cc: <stable@vger.kernel.org> # v2.6.33+ Tested-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net')
0 files changed, 0 insertions, 0 deletions