|
@@ -64,6 +64,7 @@ enum dma_transaction_type {
|
|
|
DMA_PQ_VAL,
|
|
|
DMA_MEMSET,
|
|
|
DMA_INTERRUPT,
|
|
|
+ DMA_SG,
|
|
|
DMA_PRIVATE,
|
|
|
DMA_ASYNC_TX,
|
|
|
DMA_SLAVE,
|
|
@@ -473,6 +474,11 @@ struct dma_device {
|
|
|
unsigned long flags);
|
|
|
struct dma_async_tx_descriptor *(*device_prep_dma_interrupt)(
|
|
|
struct dma_chan *chan, unsigned long flags);
|
|
|
+ struct dma_async_tx_descriptor *(*device_prep_dma_sg)(
|
|
|
+ struct dma_chan *chan,
|
|
|
+ struct scatterlist *dst_sg, unsigned int dst_nents,
|
|
|
+ struct scatterlist *src_sg, unsigned int src_nents,
|
|
|
+ unsigned long flags);
|
|
|
|
|
|
struct dma_async_tx_descriptor *(*device_prep_slave_sg)(
|
|
|
struct dma_chan *chan, struct scatterlist *sgl,
|