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: Swaminathan S <swami.iyer@ti.com> Signed-off-by: Babu Ravi <ravibabu@ti.com> Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
1230435c25
commit
dfeffa531c
1 changed files with 4 additions and 1 deletions
|
@ -1301,8 +1301,11 @@ void musb_host_tx(struct musb *musb, u8 epnum)
|
|||
return;
|
||||
} else if (usb_pipeisoc(pipe) && dma) {
|
||||
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;
|
||||
}
|
||||
} else if (tx_csr & MUSB_TXCSR_DMAENAB) {
|
||||
DBG(1, "not complete, but DMA enabled?\n");
|
||||
return;
|
||||
|
|
Loading…
Reference in a new issue