|
@@ -631,6 +631,8 @@ static int data_submit_dma(struct fpga_device *priv, struct data_buf *buf)
|
|
|
struct dma_async_tx_descriptor *tx;
|
|
|
dma_cookie_t cookie;
|
|
|
dma_addr_t dst, src;
|
|
|
+ unsigned long dma_flags = DMA_COMPL_SKIP_DEST_UNMAP |
|
|
|
+ DMA_COMPL_SKIP_SRC_UNMAP;
|
|
|
|
|
|
dst_sg = buf->vb.sglist;
|
|
|
dst_nents = buf->vb.sglen;
|
|
@@ -666,7 +668,7 @@ static int data_submit_dma(struct fpga_device *priv, struct data_buf *buf)
|
|
|
src = SYS_FPGA_BLOCK;
|
|
|
tx = chan->device->device_prep_dma_memcpy(chan, dst, src,
|
|
|
REG_BLOCK_SIZE,
|
|
|
- 0);
|
|
|
+ dma_flags);
|
|
|
if (!tx) {
|
|
|
dev_err(priv->dev, "unable to prep SYS-FPGA DMA\n");
|
|
|
return -ENOMEM;
|