linux-hardened/drivers/dma
Russell King - ARM Linux 8ac695463f dmaengine: ensure all DMA engine drivers initialize their cookies
Ensure all DMA engine drivers initialize their cookies in the same way,
so that they all behave in a similar fashion.  This means their first
issued cookie will be 2 rather than 1, and will increment to INT_MAX
before returning 1 and starting over.

In connection with this, Dan Williams said:
> Russell King wrote:
> > Secondly, some DMA engine drivers initialize the dma_chan cookie to 0,
> > others to 1.  Is there a reason for this, or are these all buggy?
>
> I know that ioat and iop-adma expect 0 to mean "I have cleaned up this
> descriptor and it is idle", and would break if zero was an in-flight
> cookie value.  The reserved usage of zero is an driver internal
> concern, but I have no problem formalizing it as a reserved value.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Jassi Brar <jassisinghbrar@gmail.com>
[imx-sdma.c & mxs-dma.c]
Tested-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
2012-03-13 11:37:42 +05:30
..
ioat dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
ipu dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
ppc4xx dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
amba-pl08x.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
at_hdmac.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
at_hdmac_regs.h dmaengine: move last completed cookie into generic dma_chan structure 2012-03-13 11:36:06 +05:30
coh901318.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +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
dmaengine.c DMAEngine: Define interleaved transfer request api 2011-11-18 12:16:24 +05:30
dmaengine.h dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
dmatest.c dmaengine: fix missing 'cnt' in ?: in dmatest 2012-01-23 11:43:18 -08:00
dw_dmac.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
dw_dmac_regs.h dmaengine: move last completed cookie into generic dma_chan structure 2012-03-13 11:36:06 +05:30
ep93xx_dma.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
fsldma.c dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
fsldma.h dmaengine: move last completed cookie into generic dma_chan structure 2012-03-13 11:36:06 +05:30
imx-dma.c dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
imx-sdma.c dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
intel_mid_dma.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
intel_mid_dma_regs.h dmaengine: move last completed cookie into generic dma_chan structure 2012-03-13 11:36:06 +05:30
iop-adma.c dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +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 dma: MX3_IPU fix depends 2011-12-19 12:26:07 +01:00
Makefile dmaengine: add CSR SiRFprimaII DMAC driver 2011-11-18 12:25:22 +05:30
mpc512x_dma.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
mv_xor.c dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
mv_xor.h dmaengine: move last completed cookie into generic dma_chan structure 2012-03-13 11:36:06 +05:30
mxs-dma.c dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
pch_dma.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
pl330.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
shdma.c dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
shdma.h dmaengine: move last completed cookie into generic dma_chan structure 2012-03-13 11:36:06 +05:30
sirf-dma.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
ste_dma40.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +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
timb_dma.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
TODO dmaengine: remove ste_dma40 from issue_pending TODO 2011-07-14 04:02:08 +05:30
txx9dmac.c dmaengine: consolidate initialization of cookies 2012-03-13 11:37:22 +05:30
txx9dmac.h dmaengine: move last completed cookie into generic dma_chan structure 2012-03-13 11:36:06 +05:30