alistair23-linux/drivers/usb/musb
Santosh Shilimkar 4c64733826 usb: musb: host: Issue a memory barrier before starting DMA
This patch fixes the issue which was observed while transfering
a large file ( > 20MB) over USB (OMAP MUSB controller acts as USB host)
to an attached USB thumb drive.

It was found that CDB field of CBW packet was set to 0x0. This was
due to missing a barrier before DMA engine starts transfer.
This  buffer is  allocated using dma_alloc_coherent which gives
non-cacheble but bufferable memory and hence needed a write
memory barrier to flush the write buffer.

More info on this thread is here:
	http://www.spinics.net/lists/linux-omap/msg33987.html

Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Maulik Mankad <x0082077@ti.com>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-09-24 11:05:01 -07:00
..
blackfin.c MUSB: Blackfin: remove musb_platform_{suspend|resume}() 2010-05-20 13:21:35 -07:00
blackfin.h USB: musb: workaround Blackfin FIFO anomalies 2009-12-23 11:34:19 -08:00
cppi_dma.c usb: musb: gadget: fix dma length in txstate 2010-09-24 11:05:01 -07:00
cppi_dma.h headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
davinci.c usb: musb: Set transceiver interface type 2010-05-20 13:21:32 -07:00
davinci.h
Kconfig USB: MUSB: Build MUSB driver for OMAP4 2010-05-20 13:21:32 -07:00
Makefile usb: musb: Makefile: remove unexistent config option 2010-05-20 13:21:36 -07:00
musb_core.c USB: musb: fix compilation warning in host only mode 2010-08-10 14:35:38 -07:00
musb_core.h USB: MUSB: make non-OMAP platforms build with CONFIG_PM=y 2010-06-30 08:16:07 -07:00
musb_debug.h usb: musb: add debugfs support 2010-05-20 13:21:32 -07:00
musb_debugfs.c usb: musb_debugfs: don't use the struct file private_data field with seq_files 2010-09-20 16:04:56 -07:00
musb_dma.h USB: musb: add work around for Blackfin anomaly 05000456 2009-12-11 11:55:24 -08:00
musb_gadget.c usb: musb: gadget: fix dma length in txstate 2010-09-24 11:05:01 -07:00
musb_gadget.h USB: musb_gadget_ep0: stop abusing musb_gadget_set_halt() 2009-12-11 11:55:25 -08:00
musb_gadget_ep0.c USB: musb: forward debug mode feature to gadget 2010-08-10 14:35:39 -07:00
musb_host.c usb: musb: host: Issue a memory barrier before starting DMA 2010-09-24 11:05:01 -07:00
musb_host.h musb: add high bandwidth ISO support 2009-06-15 21:44:41 -07:00
musb_io.h
musb_regs.h usb: musb: add ulpi access operations 2010-05-20 13:21:36 -07:00
musb_virthub.c USB: convert usb_hcd bitfields into atomic flags 2010-08-10 14:35:37 -07:00
musbhsdma.c USB: musb: do not override DMA mode in channel program 2010-08-10 14:35:39 -07:00
musbhsdma.h usb: musb: hsdma: use musb_read/writel 2010-05-20 13:21:32 -07:00
omap2430.c USB: musb: Kill board specific pinmux from driver file 2010-08-10 14:35:39 -07:00
omap2430.h USB: musb: get rid of omap_readl/writel 2010-03-02 14:54:38 -08:00
tusb6010.c USB: musb: tusb6010: fix compile error with n8x0_defconfig 2010-07-26 12:00:59 -07:00
tusb6010.h
tusb6010_omap.c usb: Fix tusb6010 for DMA API 2010-04-30 09:25:09 -07:00