diff options
author | Vinod Koul | 2016-12-14 09:07:02 +0530 |
---|---|---|
committer | Vinod Koul | 2016-12-14 09:07:02 +0530 |
commit | 57fb7ee10c27b315600445b2bad72236a11951ad (patch) | |
tree | 9cecbaf35c9fd7f11808bb3f028d60165e2079db /drivers/dma | |
parent | 90644ad7f2c0292b1a2a98d733bd17f449bb9885 (diff) | |
parent | c41668ad5de939855636650d39e961893dc5d6fc (diff) |
Merge branch 'topic/s3c64xx' into for-linus
Diffstat (limited to 'drivers/dma')
-rw-r--r-- | drivers/dma/amba-pl08x.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/dma/amba-pl08x.c b/drivers/dma/amba-pl08x.c index 939a7c31f760..0b7c6ce629a6 100644 --- a/drivers/dma/amba-pl08x.c +++ b/drivers/dma/amba-pl08x.c @@ -1793,6 +1793,13 @@ bool pl08x_filter_id(struct dma_chan *chan, void *chan_id) } EXPORT_SYMBOL_GPL(pl08x_filter_id); +static bool pl08x_filter_fn(struct dma_chan *chan, void *chan_id) +{ + struct pl08x_dma_chan *plchan = to_pl08x_chan(chan); + + return plchan->cd == chan_id; +} + /* * Just check that the device is there and active * TODO: turn this bit on/off depending on the number of physical channels @@ -2307,6 +2314,10 @@ static int pl08x_probe(struct amba_device *adev, const struct amba_id *id) ret = -EINVAL; goto out_no_platdata; } + } else { + pl08x->slave.filter.map = pl08x->pd->slave_map; + pl08x->slave.filter.mapcnt = pl08x->pd->slave_map_len; + pl08x->slave.filter.fn = pl08x_filter_fn; } /* By default, AHB1 only. If dualmaster, from platform */ |