linux/drivers/usb/musb
Daniel Glöckner 8d6499e5bd USB: musb: Fix CPPI IRQs not being signaled
On tx channel abort a cppi interrupt is generated for a short time by
setting the lowest bit of the TCPPICOMPPTR register. It is then reset
immediately by clearing the bit. When the interrupt handler is run,
it does not detect an interrupt in the TCPPIMSKSR or RCPPIMSKSR
registers and thus exits early without writing the TCPPIEOIR register.
It appears that this inhibits further cppi interrupts until the handler
is called by chance, f.ex. from davinci_interrupt().

By moving the unmasking of the interrupt below the writes to
TCPPICOMPPTR, no interrupt is generated and no write to TCPPIEOIR is
necessary.

Signed-off-by: Daniel Glöckner <dg@emlix.com>
Signed-off-by: Ajay Kumar Gupta <ajay.gupta@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-11-30 16:43:16 -08:00
..
Kconfig USB: musb: invert arch depend string 2009-10-12 14:36:28 -07:00
Makefile USB: musb: add Blackfin Kconfig options and Makefile 2009-01-07 10:00:08 -08:00
blackfin.c USB: musb: make HAVE_CLK support optional 2009-10-09 13:52:07 -07:00
blackfin.h USB: musb: add Blackfin driver to MUSB framework (v2) 2009-01-07 10:00:07 -08:00
cppi_dma.c USB: musb: Fix CPPI IRQs not being signaled 2009-11-30 16:43:16 -08:00
cppi_dma.h headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
davinci.c USB: musb: silence "suspend as a_wait_vrise is_active" msgs 2009-07-12 15:16:37 -07:00
davinci.h USB: musb: partial DaVinci dm355 support 2009-03-24 16:20:36 -07:00
musb_core.c USB: musb: Remove unwanted message in boot log 2009-11-30 16:43:16 -08:00
musb_core.h USB: musb: make HAVE_CLK support optional 2009-10-09 13:52:07 -07:00
musb_debug.h usb: musb: fix debug global variable name 2008-11-13 14:45:01 -08:00
musb_dma.h USB: Add MUSB and TUSB support 2008-08-13 17:33:00 -07:00
musb_gadget.c USB: musb_gadget: fix STALL handling 2009-11-30 16:43:15 -08:00
musb_gadget.h USB: Add MUSB and TUSB support 2008-08-13 17:33:00 -07:00
musb_gadget_ep0.c USB: musb: respect usb_request->zero in control requests 2009-11-30 16:43:16 -08:00
musb_host.c USB: musb: fix ISOC Tx programming for CPPI DMAs 2009-11-30 16:43:16 -08:00
musb_host.h musb: add high bandwidth ISO support 2009-06-15 21:44:41 -07:00
musb_io.h USB: musb: Blackfin provides read/write I/O accessor in header files 2009-01-07 10:00:08 -08:00
musb_regs.h USB: musb: make HAVE_CLK support optional 2009-10-09 13:52:07 -07:00
musb_virthub.c musb: support disconnect after HNP roleswitch 2009-06-15 21:44:41 -07:00
musbhsdma.c USB: musb: sanitize clearing TXCSR DMA bits (take 2) 2009-04-17 10:50:25 -07:00
musbhsdma.h USB: musb: enable low level DMA operation for Blackfin 2009-01-07 10:00:07 -08:00
omap2430.c usb: musb: disable OTG AUTOIDLE only with omap3430 2009-06-15 21:44:46 -07:00
omap2430.h usb: musb: fix include path 2008-09-23 13:58:08 -07:00
tusb6010.c musb: proper hookup to transceiver drivers 2009-06-15 21:44:40 -07:00
tusb6010.h USB: musb: Remove my email address from few musb related drivers 2009-04-23 14:15:27 -07:00
tusb6010_omap.c USB: musb: tusb6010 buildfix 2009-01-27 16:15:33 -08:00