summaryrefslogtreecommitdiffstats
path: root/drivers/dma/fsl-edma-common.h
diff options
context:
space:
mode:
authorLaurentiu Tudor <laurentiu.tudor@nxp.com>2019-01-18 11:06:23 +0100
committerVinod Koul <vkoul@kernel.org>2019-02-04 08:02:53 +0100
commit0fa89f972da607540497f11afbb47af6fea5bce0 (patch)
treeb5280ac2761f300c28447ff595ae46088ab92ee8 /drivers/dma/fsl-edma-common.h
parentdmaengine: fsl-edma: use struct_size() in kzalloc() (diff)
downloadlinux-0fa89f972da607540497f11afbb47af6fea5bce0.tar.xz
linux-0fa89f972da607540497f11afbb47af6fea5bce0.zip
dmaengine: fsl-edma: dma map slave device address
This mapping needs to be created in order for slave dma transfers to work on systems with SMMU. The implementation mostly mimics the one in pl330 dma driver, authored by Robin Murphy. Signed-off-by: Laurentiu Tudor <laurentiu.tudor@nxp.com> Suggested-by: Robin Murphy <robin.murphy@arm.com> Tested-by: Angelo Dureghello <angelo@sysam.it> Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/dma/fsl-edma-common.h')
-rw-r--r--drivers/dma/fsl-edma-common.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/dma/fsl-edma-common.h b/drivers/dma/fsl-edma-common.h
index 8917e8865959..b435d8e1e3a1 100644
--- a/drivers/dma/fsl-edma-common.h
+++ b/drivers/dma/fsl-edma-common.h
@@ -6,6 +6,7 @@
#ifndef _FSL_EDMA_COMMON_H_
#define _FSL_EDMA_COMMON_H_
+#include <linux/dma-direction.h>
#include "virt-dma.h"
#define EDMA_CR_EDBG BIT(1)
@@ -120,6 +121,9 @@ struct fsl_edma_chan {
struct dma_slave_config cfg;
u32 attr;
struct dma_pool *tcd_pool;
+ dma_addr_t dma_dev_addr;
+ u32 dma_dev_size;
+ enum dma_data_direction dma_dir;
};
struct fsl_edma_desc {