Commit dfeffa53 authored by Ajay Kumar Gupta's avatar Ajay Kumar Gupta Committed by Greg Kroah-Hartman

USB: musb: fix ISOC Tx programming for CPPI DMAs

Isochronous Tx DMA is getting programmed but never getting started
for CPPI and TUSB DMAs and thus Isochronous Tx doesn't work.

Fixing it by starting DMAs using musb_h_tx_dma_start().
Signed-off-by: default avatarSwaminathan S <swami.iyer@ti.com>
Signed-off-by: default avatarBabu Ravi <ravibabu@ti.com>
Signed-off-by: default avatarAjay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 1230435c
...@@ -1301,8 +1301,11 @@ void musb_host_tx(struct musb *musb, u8 epnum) ...@@ -1301,8 +1301,11 @@ void musb_host_tx(struct musb *musb, u8 epnum)
return; return;
} else if (usb_pipeisoc(pipe) && dma) { } else if (usb_pipeisoc(pipe) && dma) {
if (musb_tx_dma_program(musb->dma_controller, hw_ep, qh, urb, if (musb_tx_dma_program(musb->dma_controller, hw_ep, qh, urb,
offset, length)) offset, length)) {
if (is_cppi_enabled() || tusb_dma_omap())
musb_h_tx_dma_start(hw_ep);
return; return;
}
} else if (tx_csr & MUSB_TXCSR_DMAENAB) { } else if (tx_csr & MUSB_TXCSR_DMAENAB) {
DBG(1, "not complete, but DMA enabled?\n"); DBG(1, "not complete, but DMA enabled?\n");
return; return;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment