diff options
Diffstat (limited to 'meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0014-musb_gadget-suppress-parasitic-TX-interrupts-with.patch')
-rw-r--r-- | meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0014-musb_gadget-suppress-parasitic-TX-interrupts-with.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0014-musb_gadget-suppress-parasitic-TX-interrupts-with.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0014-musb_gadget-suppress-parasitic-TX-interrupts-with.patch new file mode 100644 index 0000000000..08e08a8538 --- /dev/null +++ b/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0014-musb_gadget-suppress-parasitic-TX-interrupts-with.patch | |||
@@ -0,0 +1,32 @@ | |||
1 | From 7766f2ea909b73f56d21746485069e02839b75f1 Mon Sep 17 00:00:00 2001 | ||
2 | From: Sergei Shtylyov <sshtylyov-hkdhdckH98+B+jHODAdFcQ@public.gmane.org> | ||
3 | Date: Fri, 27 Mar 2009 12:53:32 -0700 | ||
4 | Subject: [PATCH] musb_gadget: suppress "parasitic" TX interrupts with CPPI | ||
5 | |||
6 | Suppress "parasitic" endpoint interrupts in the DMA mode | ||
7 | when using CPPI DMA driver; they're caused by the MUSB gadget | ||
8 | driver using the DMA request mode 0 instead of the mode 1. | ||
9 | |||
10 | Signed-off-by: Sergei Shtylyov <sshtylyov-hkdhdckH98+B+jHODAdFcQ@public.gmane.org> | ||
11 | Signed-off-by: David Brownell <dbrownell-Rn4VEauK+AKRv+LV9MX5uipxlwaOVQ5f@public.gmane.org> | ||
12 | --- | ||
13 | drivers/usb/musb/musb_gadget.c | 3 ++- | ||
14 | 1 files changed, 2 insertions(+), 1 deletions(-) | ||
15 | |||
16 | diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c | ||
17 | index f79440c..bc197b2 100644 | ||
18 | --- a/drivers/usb/musb/musb_gadget.c | ||
19 | +++ b/drivers/usb/musb/musb_gadget.c | ||
20 | @@ -349,7 +349,8 @@ static void txstate(struct musb *musb, struct musb_request *req) | ||
21 | #elif defined(CONFIG_USB_TI_CPPI_DMA) | ||
22 | /* program endpoint CSR first, then setup DMA */ | ||
23 | csr &= ~(MUSB_TXCSR_P_UNDERRUN | MUSB_TXCSR_TXPKTRDY); | ||
24 | - csr |= MUSB_TXCSR_MODE | MUSB_TXCSR_DMAENAB; | ||
25 | + csr |= MUSB_TXCSR_DMAENAB | MUSB_TXCSR_DMAMODE | | ||
26 | + MUSB_TXCSR_MODE; | ||
27 | musb_writew(epio, MUSB_TXCSR, | ||
28 | (MUSB_TXCSR_P_WZC_BITS & ~MUSB_TXCSR_P_UNDERRUN) | ||
29 | | csr); | ||
30 | -- | ||
31 | 1.6.0.4 | ||
32 | |||