Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -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;