2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-28 07:04:00 +08:00
linux-next/drivers/dma/ioat
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
..
dca.c ioat3: dca and raid operations are incompatible 2009-11-19 17:07:10 -07:00
dma_v2.c dmaengine: provide a common function for completing a dma descriptor 2012-03-13 11:37:01 +05:30
dma_v2.h ioat2,3: convert to producer/consumer locking 2010-05-01 15:22:55 -07:00
dma_v3.c dmaengine: consolidate tx_status functions 2012-03-13 11:37:14 +05:30
dma.c dmaengine: ensure all DMA engine drivers initialize their cookies 2012-03-13 11:37:42 +05:30
dma.h dmaengine: consolidate tx_status functions 2012-03-13 11:37:14 +05:30
hw.h ioat3: dca and raid operations are incompatible 2009-11-19 17:07:10 -07:00
Makefile drivers/dma/ioat: Use the ccflag-y instead of EXTRA_CFLAGS 2010-12-04 15:03:06 -08:00
pci.c ioat: Adding PCI IDs for IOAT devices on SandyBridge platforms 2011-07-22 14:17:31 -07:00
registers.h ioat3: interrupt coalescing 2010-03-03 21:21:13 -07:00