linux/drivers/dma
Dan Williams 138f4c359d dmaengine, async_tx: add a "no channel switch" allocator
Channel switching is problematic for some dmaengine drivers as the
architecture precludes separating the ->prep from ->submit.  In these
cases the driver can select ASYNC_TX_DISABLE_CHANNEL_SWITCH to modify
the async_tx allocator to only return channels that support all of the
required asynchronous operations.

For example MD_RAID456=y selects support for asynchronous xor, xor
validate, pq, pq validate, and memcpy.  When
ASYNC_TX_DISABLE_CHANNEL_SWITCH=y any channel with all these
capabilities is marked DMA_ASYNC_TX allowing async_tx_find_channel() to
quickly locate compatible channels with the guarantee that dependency
chains will remain on one channel.  When
ASYNC_TX_DISABLE_CHANNEL_SWITCH=n async_tx_find_channel() may select
channels that lead to operation chains that need to cross channel
boundaries using the async_tx channel switch capability.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2009-09-08 17:42:51 -07:00
..
ioat ioat2,3: dynamically resize descriptor ring 2009-09-08 17:38:54 -07:00
ipu dma: fix ipu_idmac.c to not discard the last queued buffer 2009-05-12 14:41:48 -07:00
dmaengine.c dmaengine, async_tx: add a "no channel switch" allocator 2009-09-08 17:42:51 -07:00
dmatest.c Merge branch 'md-raid6-accel' into ioat3.2 2009-09-08 17:42:29 -07:00
dw_dmac_regs.h dw_dmac: add cyclic API to DW DMA driver 2009-04-01 15:42:34 -07:00
dw_dmac.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx 2009-04-03 12:13:45 -07:00
fsldma.c fsldma: Fix compile warnings 2009-05-27 13:40:00 -07:00
fsldma.h fsldma: allow Freescale Elo DMA driver to be compiled as a module 2008-09-26 17:00:11 -07:00
iop-adma.c async_tx: add support for asynchronous GF multiplication 2009-08-29 19:09:27 -07:00
iovlock.c net_dma: poll for a descriptor after allocation failure 2009-09-08 17:38:54 -07:00
Kconfig dmaengine, async_tx: add a "no channel switch" allocator 2009-09-08 17:42:51 -07:00
Makefile ioat: move to drivers/dma/ioat/ 2009-07-28 14:32:12 -07:00
mv_xor.c dmaengine: initialize tx_list in dma_async_tx_descriptor_init 2009-03-25 09:13:24 -07:00
mv_xor.h dmaengine: DMA engine driver for Marvell XOR engine 2008-07-08 11:58:36 -07:00