diff options
author | Vinod Koul <vinod.koul@intel.com> | 2017-11-14 06:03:33 +0100 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2017-11-14 06:03:33 +0100 |
commit | 2c8528592c3280c3e2dc85a804120ca64137de32 (patch) | |
tree | 1deb4302d5ccf10452b1c480690927813e5e9ced /drivers/dma | |
parent | Merge branch 'topic/renasas' into for-linus (diff) | |
parent | dmaengine: sa11x0: add DMA filters (diff) | |
download | linux-2c8528592c3280c3e2dc85a804120ca64137de32.tar.xz linux-2c8528592c3280c3e2dc85a804120ca64137de32.zip |
Merge branch 'topic/sa11x0' into for-linus
Diffstat (limited to 'drivers/dma')
-rw-r--r-- | drivers/dma/sa11x0-dma.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/dma/sa11x0-dma.c b/drivers/dma/sa11x0-dma.c index 1adeb3265085..c7a89c22890e 100644 --- a/drivers/dma/sa11x0-dma.c +++ b/drivers/dma/sa11x0-dma.c @@ -823,6 +823,13 @@ static const struct sa11x0_dma_channel_desc chan_desc[] = { CD(Ser4SSPRc, DDAR_RW), }; +static const struct dma_slave_map sa11x0_dma_map[] = { + { "sa11x0-ir", "tx", "Ser2ICPTr" }, + { "sa11x0-ir", "rx", "Ser2ICPRc" }, + { "sa11x0-ssp", "tx", "Ser4SSPTr" }, + { "sa11x0-ssp", "rx", "Ser4SSPRc" }, +}; + static int sa11x0_dma_init_dmadev(struct dma_device *dmadev, struct device *dev) { @@ -909,6 +916,10 @@ static int sa11x0_dma_probe(struct platform_device *pdev) spin_lock_init(&d->lock); INIT_LIST_HEAD(&d->chan_pending); + d->slave.filter.fn = sa11x0_dma_filter_fn; + d->slave.filter.mapcnt = ARRAY_SIZE(sa11x0_dma_map); + d->slave.filter.map = sa11x0_dma_map; + d->base = ioremap(res->start, resource_size(res)); if (!d->base) { ret = -ENOMEM; |