Ludovic Desroches
25c5e9626c
dmaengine: at_xdmac: fix residue computation
...
When computing the residue we need two pieces of information: the current
descriptor and the remaining data of the current descriptor. To get
that information, we need to read consecutively two registers but we
can't do it in an atomic way. For that reason, we have to check manually
that current descriptor has not changed.
Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Suggested-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
Reported-by: David Engraf <david.engraf@sysgo.com>
Tested-by: David Engraf <david.engraf@sysgo.com>
Fixes: e1f7c9eee7 ("dmaengine: at_xdmac: creation of the atmel
eXtended DMA Controller driver")
Cc: stable@vger.kernel.org #4.1 and later
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
2016-03-10 16:32:36 +05:30
..
bestcomm
dw
dmaengine: dw: disable BLOCK IRQs for non-cyclic xfer
2016-02-15 22:19:32 +05:30
hsu
dmaengine: hsu: speed up residue calculation
2015-12-05 14:00:34 +05:30
ioat
dmaengine: IOATDMA: fix timer code that continues to restart channels during idle
2016-01-30 22:29:03 +05:30
ipu
genirq: Remove irq argument from irq flow handlers
2015-09-16 15:47:51 +02:00
ppc4xx
sh
dmaengine updates for 4.5-rc1
2016-01-13 10:59:52 -08:00
xilinx
dmaengine: xilinx: Fix module autoload for OF platform driver
2015-10-01 07:35:39 +05:30
acpi-dma.c
dmaengine: acpi-dma: check for 64-bit MMIO address
2015-12-05 14:00:34 +05:30
amba-pl08x.c
at_hdmac.c
dmaengine: at_hdmac: use %pad format string for dma_addr_t
2015-11-16 09:21:05 +05:30
at_hdmac_regs.h
dmaengine: at_hdmac: use %pad format string for dma_addr_t
2015-11-16 09:21:05 +05:30
at_xdmac.c
dmaengine: at_xdmac: fix residue computation
2016-03-10 16:32:36 +05:30
bcm2835-dma.c
dmaengine: bcm2835-dma: Convert to use DMA pool
2015-12-05 15:36:32 +05:30
coh901318.c
coh901318.h
coh901318_lli.c
cppi41.c
dma-axi-dmac.c
dmaengine: axi_dmac: Add synchronization support
2015-11-16 08:28:52 +05:30
dma-jz4740.c
dma-jz4780.c
dmaengine: jz4780: Kill tasklets before unregistering the device
2015-08-18 22:28:50 +05:30
dmaengine.c
Merge branch 'topic/async' into for-linus
2016-01-06 15:17:47 +05:30
dmaengine.h
dmatest.c
edma.c
dmaengine: edma: fix residue race for cyclic
2016-02-08 08:42:55 +05:30
ep93xx_dma.c
fsl-edma.c
dmaengine: fsl-edma: add PM suspend/resume support
2015-12-05 15:52:13 +05:30
fsl_raid.c
fsl_raid.h
fsldma.c
dmaengine: fsldma: fix memory leak
2016-03-09 12:15:22 +05:30
fsldma.h
idma64.c
dmaengine: idma64: use local variable to index descriptor
2015-12-05 13:54:28 +05:30
idma64.h
dmaengine: idma64: set maximum allowed segment size for DMA
2015-12-05 13:54:28 +05:30
img-mdc-dma.c
dmaengine: mdc: Correct terminate_all handling
2015-12-18 11:12:29 +05:30
imx-dma.c
imx-sdma.c
dmaengine: imx-sdma: remove __init annotation on sdma_event_remap
2015-11-16 09:14:25 +05:30
iop-adma.c
drivers/dma/iop-adma: Use dma_alloc_writecombine() kernel-style
2015-08-25 09:59:46 +02:00
k3dma.c
Kconfig
sound updates for 4.5-rc1
2016-01-17 12:05:31 -08:00
lpc18xx-dmamux.c
dmaengine: add driver for lpc18xx dmamux
2015-08-18 22:12:14 +05:30
Makefile
dmaengine: Add STM32 DMA driver
2015-11-16 08:56:10 +05:30
mic_x100_dma.c
dmaengine: Revert "dmaengine: mic_x100: add missing spin_unlock"
2016-01-06 15:16:36 +05:30
mic_x100_dma.h
mmp_pdma.c
mmp_tdma.c
moxart-dma.c
dmaengine: moxart-dma: Fix module autoload for OF platform driver
2015-10-01 07:34:31 +05:30
mpc512x_dma.c
dmaengine: mpc512x: Fix module autoload for OF platform driver
2015-10-01 07:34:31 +05:30
mv_xor.c
dmaengine: mv_xor: add suspend/resume support
2016-01-06 15:42:27 +05:30
mv_xor.h
dmaengine: mv_xor: add suspend/resume support
2016-01-06 15:42:27 +05:30
mxs-dma.c
nbpfaxi.c
of-dma.c
omap-dma.c
Merge branch 'topic/omap' into for-linus
2016-01-06 15:18:19 +05:30
pch_dma.c
pl330.c
dmaengine updates for 4.3-rc1
2015-09-04 11:10:18 -07:00
pxa_dma.c
dmaengine: pxa_dma: fix cyclic transfers
2016-03-03 21:06:45 +05:30
qcom_bam_dma.c
s3c24xx-dma.c
sa11x0-dma.c
sirf-dma.c
dmaengine: sirf: Fix module autoload for OF platform driver
2015-10-01 07:34:31 +05:30
ste_dma40.c
ste_dma40: Delete an unnecessary variable initialisation in d40_probe()
2015-12-10 09:17:10 +05:30
ste_dma40_ll.c
ste_dma40_ll.h
stm32-dma.c
dmaengine: stm32-dma: Fix unchecked deference of chan->desc
2015-12-10 09:45:22 +05:30
sun4i-dma.c
dmaengine: sun4i: fix unsafe list iteration
2015-09-30 12:17:22 +05:30
sun6i-dma.c
dmaengine: sun6i: Fix module autoload for OF platform driver
2015-10-01 07:35:26 +05:30
tegra20-apb-dma.c
dmaengine: tegra-apb: Free interrupts before killing tasklets
2015-12-05 16:13:08 +05:30
ti-dma-crossbar.c
dmaengine: ti-dma-crossbar: dra7: Support for reserving DMA event ranges
2015-11-30 15:09:16 +05:30
timb_dma.c
TODO
txx9dmac.c
txx9dmac.h
virt-dma.c
dmaengine: virt-dma: don't always free descriptor upon completion
2015-11-16 08:32:16 +05:30
virt-dma.h
Merge branch 'topic/async' into for-linus
2016-01-06 15:17:47 +05:30
xgene-dma.c
dmaengine: xgene-dma: Fix double IRQ issue by setting IRQ_DISABLE_UNLAZY flag
2016-01-07 11:09:36 +05:30
zx296702_dma.c
dmaengine updates for 4.4-rc1
2015-11-10 10:05:17 -08:00