musb_gadget: suppress "parasitic" TX interrupts with CPPI
Suppress "parasitic" endpoint interrupts in the DMA mode when using CPPI DMA driver; they're caused by the MUSB gadget driver using the DMA request mode 0 instead of the mode 1. Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
a5073b5283
commit
37e3ee9910
@@ -349,7 +349,8 @@ static void txstate(struct musb *musb, struct musb_request *req)
|
|||||||
#elif defined(CONFIG_USB_TI_CPPI_DMA)
|
#elif defined(CONFIG_USB_TI_CPPI_DMA)
|
||||||
/* program endpoint CSR first, then setup DMA */
|
/* program endpoint CSR first, then setup DMA */
|
||||||
csr &= ~(MUSB_TXCSR_P_UNDERRUN | MUSB_TXCSR_TXPKTRDY);
|
csr &= ~(MUSB_TXCSR_P_UNDERRUN | MUSB_TXCSR_TXPKTRDY);
|
||||||
csr |= MUSB_TXCSR_MODE | MUSB_TXCSR_DMAENAB;
|
csr |= MUSB_TXCSR_DMAENAB | MUSB_TXCSR_DMAMODE |
|
||||||
|
MUSB_TXCSR_MODE;
|
||||||
musb_writew(epio, MUSB_TXCSR,
|
musb_writew(epio, MUSB_TXCSR,
|
||||||
(MUSB_TXCSR_P_WZC_BITS & ~MUSB_TXCSR_P_UNDERRUN)
|
(MUSB_TXCSR_P_WZC_BITS & ~MUSB_TXCSR_P_UNDERRUN)
|
||||||
| csr);
|
| csr);
|
||||||
|
Reference in New Issue
Block a user