summaryrefslogtreecommitdiffstats
path: root/drivers/dma
diff options
context:
space:
mode:
authorJamie Iles2011-01-21 15:11:54 +0100
committerDan Williams2011-01-30 08:10:55 +0100
commit95ea759e9e116dade3e7386be2a3db76c90f4675 (patch)
treea69b3fbb02f1d8305357524e67159e69e6ffa002 /drivers/dma
parentdmaengine/dw_dmac: allow src/dst masters to be configured at runtime (diff)
downloadkernel-qcow2-linux-95ea759e9e116dade3e7386be2a3db76c90f4675.tar.gz
kernel-qcow2-linux-95ea759e9e116dade3e7386be2a3db76c90f4675.tar.xz
kernel-qcow2-linux-95ea759e9e116dade3e7386be2a3db76c90f4675.zip
dmaengine/dw_dmac: provide a mechanism to indicate private devices
Some platforms (e.g. Picochip PC3XX) have multiple DMA controllers where some may be used for slave transfers and others for general purpose memcpy type transfers. Add a .is_private boolean to the platform data structure so that controllers can be marked as private so that the DMA_PRIVATE capability will be set for that controller. Signed-off-by: Jamie Iles <jamie.iles@picochip.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/dw_dmac.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/dma/dw_dmac.c b/drivers/dma/dw_dmac.c
index a4cf2614085a..08dab3badad2 100644
--- a/drivers/dma/dw_dmac.c
+++ b/drivers/dma/dw_dmac.c
@@ -1341,6 +1341,8 @@ static int __init dw_probe(struct platform_device *pdev)
dma_cap_set(DMA_MEMCPY, dw->dma.cap_mask);
dma_cap_set(DMA_SLAVE, dw->dma.cap_mask);
+ if (pdata->is_private)
+ dma_cap_set(DMA_PRIVATE, dw->dma.cap_mask);
dw->dma.dev = &pdev->dev;
dw->dma.device_alloc_chan_resources = dwc_alloc_chan_resources;
dw->dma.device_free_chan_resources = dwc_free_chan_resources;