summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThirupathi Chippakurthy <thirupathi.chippakurthy@stericsson.com>2011-11-23 18:07:24 +0530
committerPhilippe Langlais <philippe.langlais@linaro.org>2012-01-31 11:47:33 +0100
commite8428cbd64b919228f149421c80eb550418cde08 (patch)
tree8b255b3885be90a508abf6643fe6a72576ed506e
parent00b166773cdcdea2f54945982cfaeb4474254154 (diff)
musb: host: Wait for TXPKTRDY to clear in host
MUSB_TXCSR_TXPKTRDY will not get cleared if the data is not on the bus. So, need to wait for it to clear in the DMA completion callback.As per musb datasheet, generally mode 1 needs to be used for data length greater than or equal to max packet size. Bus reset happening due to scsi timeout,since in this case should not return continue for next transfers. ST-Ericsson ID:ER 365087 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: NA Signed-off-by: Thirupathi <thirupathi.chippakurthy@stericsson.com>
-rw-r--r--drivers/usb/musb/musb_host.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/usb/musb/musb_host.c b/drivers/usb/musb/musb_host.c
index 07e25fa1bf2..f12b046b0d6 100644
--- a/drivers/usb/musb/musb_host.c
+++ b/drivers/usb/musb/musb_host.c
@@ -1169,7 +1169,6 @@ void musb_host_tx(struct musb *musb, u8 epnum)
} while ((tx_csr & MUSB_TXCSR_TXPKTRDY) != 0);
dev_dbg(musb->controller, "TXPKTRDY Cleared. Continue...\n");
- return;
} else if (tx_csr & MUSB_TXCSR_H_NAKTIMEOUT) {
dev_dbg(musb->controller, "TX end=%d device not responding\n", epnum);