aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/dmaengine.h
diff options
context:
space:
mode:
authorRobert Jarzmik <robert.jarzmik@free.fr>2015-10-13 21:54:29 +0200
committerVinod Koul <vinod.koul@intel.com>2015-11-16 08:32:16 +0530
commit9eeacd3a2f17438d9d286ff2f78c4709a4148be7 (patch)
treed602de8c0011d281ebaa138a6eecfc88f1e6d1d7 /include/linux/dmaengine.h
parentdmaengine: virt-dma: don't always free descriptor upon completion (diff)
downloadwireguard-linux-9eeacd3a2f17438d9d286ff2f78c4709a4148be7.tar.xz
wireguard-linux-9eeacd3a2f17438d9d286ff2f78c4709a4148be7.zip
dmaengine: enable DMA_CTRL_REUSE
In the current state, the capability of transfer reuse can neither be set by a slave dmaengine driver, nor used by a client driver, because the capability is not available to dma_get_slave_caps(). Fix this by adding a way to declare the capability. Fixes: 272420214d26 ("dmaengine: Add DMA_CTRL_REUSE") Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'include/linux/dmaengine.h')
-rw-r--r--include/linux/dmaengine.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h
index c47c68e535e8..6f94b5cbd97c 100644
--- a/include/linux/dmaengine.h
+++ b/include/linux/dmaengine.h
@@ -659,6 +659,7 @@ enum dmaengine_alignment {
* struct with auxiliary transfer status information, otherwise the call
* will just return a simple status code
* @device_issue_pending: push pending transactions to hardware
+ * @descriptor_reuse: a submitted transfer can be resubmitted after completion
*/
struct dma_device {
@@ -681,6 +682,7 @@ struct dma_device {
u32 src_addr_widths;
u32 dst_addr_widths;
u32 directions;
+ bool descriptor_reuse;
enum dma_residue_granularity residue_granularity;
int (*device_alloc_chan_resources)(struct dma_chan *chan);