summaryrefslogtreecommitdiff
path: root/drivers/usb/storage/uas.c
diff options
context:
space:
mode:
authorPeter Chen <peter.chen@nxp.com>2019-11-15 19:50:00 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-02-28 18:36:10 +0300
commite64eae745849c6db1d3497071cc75044126ad501 (patch)
treeb209a5c66ea91c9f5527f18dbbdddbd8bcd918e9 /drivers/usb/storage/uas.c
parent3026b4972d406b05c9349a8cd1cf931614043d23 (diff)
downloadlinux-e64eae745849c6db1d3497071cc75044126ad501.tar.xz
usb: host: xhci: update event ring dequeue pointer on purpose
commit dc0ffbea5729a3abafa577ebfce87f18b79e294b upstream. On some situations, the software handles TRB events slower than adding TRBs, then xhci_handle_event can't return zero long time, the xHC will consider the event ring is full, and trigger "Event Ring Full" error, but in fact, the software has already finished lots of events, just no chance to update ERDP (event ring dequeue pointer). In this commit, we force update ERDP if half of TRBS_PER_SEGMENT events have handled to avoid "Event Ring Full" error. Signed-off-by: Peter Chen <peter.chen@nxp.com> Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> Link: https://lore.kernel.org/r/1573836603-10871-2-git-send-email-mathias.nyman@linux.intel.com Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/storage/uas.c')
0 files changed, 0 insertions, 0 deletions