linux/drivers/dma
Lothar Waßmann 7ad7a345a4 dma: mxs-dma: Don't use CLKGATE bits in CTRL0 to disable DMA channels
This is how the original Freescale code (unintentionally) worked,
because the code path which would have asserted the CLKGATE bit was
never actually reached in their code.
This fixes the nefarious "DMA timout" bug when multiple DMA channels
(e.g. GPMI NAND and MMC) are used at the same time.
If a better fix for this problem should be found, the clkgate handling
could be reinstated.
See http://lists.infradead.org/pipermail/linux-arm-kernel/2011-September/065228.html

Also reverse the order of mxs_dma_disable_chan() and
mxs_dma_reset_chan() in mxs_dma_control() because mxs_dma_reset_chan()
can only work when the DMA channel is enabled.

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
2011-12-23 20:54:55 +05:30
..
ioat ioat: fix xor_idx_to_desc 2011-08-03 22:25:06 -07:00
ipu i.MX IPU DMA: Fix wrong burstsize settings 2011-12-08 12:59:03 +05:30
ppc4xx Merge branch 'old_next' into next 2011-04-06 11:51:12 +05:30
amba-pl08x.c dmaengine/amba-pl08x: Config ccfg and increment phychan_hold if phychan is true 2011-12-05 08:36:01 +05:30
at_hdmac_regs.h dmaengine: at_hdmac: simplify device selection from platform data or DT 2011-11-28 15:55:36 +05:30
at_hdmac.c dmaengine: at_hdmac: simplify device selection from platform data or DT 2011-11-28 15:55:36 +05:30
coh901318_lli.c dmaengine: move drivers to dma_transfer_direction 2011-10-27 20:53:43 +05:30
coh901318_lli.h dmaengine: move drivers to dma_transfer_direction 2011-10-27 20:53:43 +05:30
coh901318.c dmaengine: move drivers to dma_transfer_direction 2011-10-27 20:53:43 +05:30
dmaengine.c DMAEngine: Define interleaved transfer request api 2011-11-18 12:16:24 +05:30
dmatest.c dmatest: make dmatest threads freezable 2011-08-29 18:01:27 +05:30
dw_dmac_regs.h dmaengine/dw_dmac: Reconfigure interrupt and chan_cfg register on resume 2011-11-28 08:48:02 +05:30
dw_dmac.c dmaengine/dw_dmac: Reconfigure interrupt and chan_cfg register on resume 2011-11-28 08:48:02 +05:30
ep93xx_dma.c dma/ep93xx_dma: prevent ep93xx_dma_tasklet() to reference an empty list 2011-12-05 08:16:26 +05:30
fsldma.c dmaengine: move drivers to dma_transfer_direction 2011-10-27 20:53:43 +05:30
fsldma.h fsldma: fix controller lockups 2011-03-11 17:52:36 -08:00
imx-dma.c Merge branch 'dma_slave_direction' into next_test_dirn 2011-11-17 14:54:57 +05:30
imx-sdma.c IMX/SDMA : save the real count for one DMA transaction. 2011-12-05 08:22:26 +05:30
intel_mid_dma_regs.h dmaengine: move drivers to dma_transfer_direction 2011-10-27 20:53:43 +05:30
intel_mid_dma.c Merge branch 'dma_slave_direction' into next_test_dirn 2011-11-17 14:54:57 +05:30
iop-adma.c dmaengine: convert drivers/dma/* to use module_platform_driver() 2011-12-05 08:25:54 +05:30
iovlock.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
Kconfig dmaengine: add CSR SiRFprimaII DMAC driver 2011-11-18 12:25:22 +05:30
Makefile dmaengine: add CSR SiRFprimaII DMAC driver 2011-11-18 12:25:22 +05:30
mpc512x_dma.c dmaengine: convert drivers/dma/* to use module_platform_driver() 2011-12-05 08:25:54 +05:30
mv_xor.c dma: mv_xor: use resource_size() 2011-07-14 03:32:31 +05:30
mv_xor.h mv_xor: implement a private tx_list 2009-09-08 17:53:03 -07:00
mxs-dma.c dma: mxs-dma: Don't use CLKGATE bits in CTRL0 to disable DMA channels 2011-12-23 20:54:55 +05:30
pch_dma.c Merge branch 'dma_slave_direction' into next_test_dirn 2011-11-17 14:54:57 +05:30
pl330.c DMA: PL330: Remove pm_runtime_xxx calls from pl330 probe/remove 2011-12-08 13:44:35 +05:30
shdma.c dmaengine: move drivers to dma_transfer_direction 2011-10-27 20:53:43 +05:30
shdma.h dma: shdma: transfer based runtime PM 2011-09-28 10:07:40 +05:30
sirf-dma.c dmaengine: convert drivers/dma/* to use module_platform_driver() 2011-12-05 08:25:54 +05:30
ste_dma40_ll.c dma40: cyclic xfer support 2011-01-30 22:27:21 -08:00
ste_dma40_ll.h dmaengine/ste_dma40: support pm in dma40 2011-11-22 09:46:06 +05:30
ste_dma40.c dmaengine/ste_dma40: allow fixed physical channel 2011-12-05 09:16:59 +05:30
timb_dma.c dmaengine: convert drivers/dma/* to use module_platform_driver() 2011-12-05 08:25:54 +05:30
TODO dmaengine: remove ste_dma40 from issue_pending TODO 2011-07-14 04:02:08 +05:30
txx9dmac.c dmaengine: move drivers to dma_transfer_direction 2011-10-27 20:53:43 +05:30
txx9dmac.h txx9dmac: implement a private tx_list 2009-09-08 17:53:03 -07:00