summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0014-musb_gadget-suppress-parasitic-TX-interrupts-with.patch
diff options
context:
space:
mode:
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.patch32
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 @@
1From 7766f2ea909b73f56d21746485069e02839b75f1 Mon Sep 17 00:00:00 2001
2From: Sergei Shtylyov <sshtylyov-hkdhdckH98+B+jHODAdFcQ@public.gmane.org>
3Date: Fri, 27 Mar 2009 12:53:32 -0700
4Subject: [PATCH] musb_gadget: suppress "parasitic" TX interrupts with CPPI
5
6Suppress "parasitic" endpoint interrupts in the DMA mode
7when using CPPI DMA driver; they're caused by the MUSB gadget
8driver using the DMA request mode 0 instead of the mode 1.
9
10Signed-off-by: Sergei Shtylyov <sshtylyov-hkdhdckH98+B+jHODAdFcQ@public.gmane.org>
11Signed-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
16diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c
17index 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--
311.6.0.4
32