summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorBin Liu <b-liu@ti.com>2017-07-25 09:31:34 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-08-16 13:43:19 -0700
commit821ccbe2937ece265dfc087c4fe272242b70350a (patch)
treeb423bd072ebad238ec56bca38243c833ae22b25c /drivers
parent4fd8c366acac7a888b83a25d349476a111e49ac7 (diff)
usb: musb: fix tx fifo flush handling again
commit 45d73860530a14c608f410b91c6c341777bfa85d upstream. commit 68fe05e2a451 ("usb: musb: fix tx fifo flush handling") drops the 1ms delay trying to solve the long disconnect time issue when application queued many tx urbs. However, the 1ms delay is needed for some use cases, for example, without the delay, reconnecting AR9271 WIFI dongle no longer works if the connection is dropped from the AP. So let's add back the 1ms delay in musb_h_tx_flush_fifo(), and solve the long disconnect time problem with a separate patch for usb_hcd_flush_endpoint(). Signed-off-by: Bin Liu <b-liu@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/usb/musb/musb_host.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/musb/musb_host.c b/drivers/usb/musb/musb_host.c
index 99beda9e241d..55c624f2a8c0 100644
--- a/drivers/usb/musb/musb_host.c
+++ b/drivers/usb/musb/musb_host.c
@@ -139,6 +139,7 @@ static void musb_h_tx_flush_fifo(struct musb_hw_ep *ep)
"Could not flush host TX%d fifo: csr: %04x\n",
ep->epnum, csr))
return;
+ mdelay(1);
}
}