Commit f11c4c97f69d7b216330519d9eade6a2684e1428

Authored by Ravi Babu
1 parent 82db548320

usb: musb: gadget: rxdma fix when data rcvd before usb request queued

In DMA mode, when the data is received from host before the next request
is programmed, the pio interrupt occurs and data lost since no request.

This scenario occurs sometimes in android gadget, when adb protocol receive
bigger size (>4KB) files.

The fix is not to disable the dma after completion of current rx request
so that dma interrupt will occur correctly for next request
when data received from host before next request is programmed.

Signed-off-by: Ravi Babu <ravibabu@ti.com>

Showing 1 changed file with 0 additions and 3 deletions Side-by-side Diff

drivers/usb/musb/musb_gadget.c
... ... @@ -948,9 +948,6 @@
948 948 }
949 949  
950 950 if (dma && (csr & MUSB_RXCSR_DMAENAB)) {
951   - csr &= ~(MUSB_RXCSR_AUTOCLEAR
952   - | MUSB_RXCSR_DMAENAB
953   - | MUSB_RXCSR_DMAMODE);
954 951 musb_writew(epio, MUSB_RXCSR,
955 952 MUSB_RXCSR_P_WZC_BITS | csr);
956 953