]> www.infradead.org Git - users/jedix/linux-maple.git/commit
usb: xhci: Complete 'error mid TD' transfers when handling Missed Service
authorMichal Pecio <michal.pecio@gmail.com>
Thu, 6 Mar 2025 14:49:43 +0000 (16:49 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Mar 2025 15:46:15 +0000 (16:46 +0100)
commitbfa8459942822bdcc86f0e87f237c0723ae64948
tree3dca5856f6568ab49e721bf9e987867af39a2161
parent58d0a3fab5f4fdc112c16a4c6d382f62097afd1c
usb: xhci: Complete 'error mid TD' transfers when handling Missed Service

Missed Service Error after an error mid TD means that the failed TD has
already been passed by the xHC without acknowledgment of the final TRB,
a known hardware bug. So don't wait any more and give back the TD.

Reproduced on NEC uPD720200 under conditions of ludicrously bad USB link
quality, confirmed to behave as expected using dynamic debug.

Signed-off-by: Michal Pecio <michal.pecio@gmail.com>
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20250306144954.3507700-5-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-ring.c