path: root/drivers
diff options
authorIra Snyder <>2010-09-30 11:46:44 +0000
committerDan Williams <>2010-10-07 14:41:40 -0700
commita86ee03ce6f279ebe581a7a8c0c4393eaeb789ee (patch)
treee662a6492370232e008d405e4ed7bfa4be0aea2e /drivers
parentcc60f8878eab892c03d06b10f389232b9b66bd83 (diff)
dma: add support for scatterlist to scatterlist copy
This adds support for scatterlist to scatterlist DMA transfers. A similar interface is exposed by the fsldma driver (through the DMA_SLAVE API) and by the ste_dma40 driver (through an exported function). This patch paves the way for making this type of copy operation a part of the generic DMAEngine API. Futher patches will add support in individual drivers. Signed-off-by: Ira W. Snyder <> Signed-off-by: Dan Williams <>
Diffstat (limited to 'drivers')
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/dma/dmaengine.c b/drivers/dma/dmaengine.c
index 9d31d5eb95c1..db403b8ccabd 100644
--- a/drivers/dma/dmaengine.c
+++ b/drivers/dma/dmaengine.c
@@ -690,6 +690,8 @@ int dma_async_device_register(struct dma_device *device)
BUG_ON(dma_has_cap(DMA_INTERRUPT, device->cap_mask) &&
+ BUG_ON(dma_has_cap(DMA_SG, device->cap_mask) &&
+ !device->device_prep_dma_sg);
BUG_ON(dma_has_cap(DMA_SLAVE, device->cap_mask) &&
BUG_ON(dma_has_cap(DMA_SLAVE, device->cap_mask) &&