diff options
author | Thirupathi Chippakurthy <thirupathi.chippakurthy@stericsson.com> | 2011-11-23 18:07:24 +0530 |
---|---|---|
committer | Philippe Langlais <philippe.langlais@stericsson.com> | 2012-01-04 09:50:33 +0100 |
commit | d6a2cad09b49fd161f92eed7e3761d075f18c26c (patch) | |
tree | db67e1da82461193062fcfadec39b6df7f0bbe14 /drivers | |
parent | 71afa14dad23bdacf2d98c32a2b2c1c1260398c3 (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>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/musb/musb_host.c | 1 |
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); |