linux/drivers/dma
Dan Williams cd78809f61 ioat3: fix p-disabled q-continuation
When continuing a pq calculation the driver needs 3 extra sources.  The
driver can perform a 3 source calculation with a single descriptor, but
needs an extended descriptor to process up to 8 sources in one
operation.  However, in the p-disabled case only one extra source is
needed.  When continuing a p-disabled operation there are occasions
(i.e. 0 < src_cnt % 8 < 3) where the tail operation does not need an
extended descriptor.  Properly account for this fact otherwise invalid
'dmacount' values will be written to hardware usually causing the
channel to halt with 'invalid descriptor' errors.

Cc: <stable@kernel.org>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2009-12-17 13:52:39 -07:00
..
ioat ioat3: fix p-disabled q-continuation 2009-12-17 13:52:39 -07:00
ipu dma: fix ipu_idmac.c to not discard the last queued buffer 2009-05-12 14:41:48 -07:00
at_hdmac_regs.h at_hdmac: implement a private tx_list 2009-09-08 17:53:03 -07:00
at_hdmac.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx into for-linus 2009-09-23 18:31:11 +10:00
dmaengine.c async_tx: build-time toggling of async_{syndrome,xor}_val dma support 2009-11-19 23:21:03 -07:00
dmatest.c Merge branch 'dmaengine' into async-tx-next 2009-09-08 17:55:21 -07:00
dw_dmac_regs.h dw_dmac: implement a private tx_list 2009-09-08 17:53:02 -07:00
dw_dmac.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx into for-linus 2009-09-23 18:31:11 +10:00
fsldma.c fsldma: Add DMA_SLAVE support 2009-09-08 17:53:04 -07:00
fsldma.h fsldma: split apart external pause and request count features 2009-09-08 17:53:04 -07:00
iop-adma.c Merge branch 'dmaengine' into async-tx-next 2009-09-08 17:55:21 -07:00
iovlock.c net_dma: poll for a descriptor after allocation failure 2009-09-08 17:38:54 -07:00
Kconfig async_tx: build-time toggling of async_{syndrome,xor}_val dma support 2009-11-19 23:21:03 -07:00
Makefile dmaengine: sh: Add Support SuperH DMA Engine driver 2009-09-08 17:56:02 -07:00
mv_xor.c mv_xor: implement a private tx_list 2009-09-08 17:53:03 -07:00
mv_xor.h mv_xor: implement a private tx_list 2009-09-08 17:53:03 -07:00
shdma.c shdma: fix initialization error handling 2009-11-22 12:10:10 -07:00
shdma.h dmaengine: sh: Add Support SuperH DMA Engine driver 2009-09-08 17:56:02 -07:00
txx9dmac.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx into for-linus 2009-09-23 18:31:11 +10:00
txx9dmac.h txx9dmac: implement a private tx_list 2009-09-08 17:53:03 -07:00