summaryrefslogtreecommitdiffstats
path: root/block/blk-settings.c
diff options
context:
space:
mode:
authorSarah Sharp <sarah.a.sharp@linux.intel.com>2009-07-27 21:03:15 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2009-07-28 23:31:11 +0200
commita1587d97ce3e53816c88b513a2038f6c5e5babd7 (patch)
tree3deb2b83974a9cfa61def8f8ab248cafbbb9809f /block/blk-settings.c
parentUSB: xhci: Set TD size in transfer TRB. (diff)
downloadlinux-a1587d97ce3e53816c88b513a2038f6c5e5babd7.tar.xz
linux-a1587d97ce3e53816c88b513a2038f6c5e5babd7.zip
USB: xhci: Deal with stalled endpoints.
When an endpoint on a device under an xHCI host controller stalls, the host controller driver must let the hardware know that the USB core has successfully cleared the halt condition. The HCD submits a Reset Endpoint Command, which will clear the toggle bit for USB 2.0 devices, and set the sequence number to zero for USB 3.0 devices. The xHCI urb_enqueue will accept new URBs while the endpoint is halted, and will queue them to the hardware rings. However, the endpoint doorbell will not be rung until the Reset Endpoint Command completes. Don't queue a reset endpoint command for root hubs. khubd clears halt conditions on the roothub during the initialization process, but the roothub isn't a real device, so the xHCI host controller doesn't need to know about the cleared halt. Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'block/blk-settings.c')
0 files changed, 0 insertions, 0 deletions