dmaengine i.MX dma: initialize dma capabilities outside channel loop
authorSascha Hauer <s.hauer@pengutronix.de>
Mon, 31 Jan 2011 10:35:59 +0000 (11:35 +0100)
committerSascha Hauer <s.hauer@pengutronix.de>
Mon, 31 Jan 2011 11:36:23 +0000 (12:36 +0100)
The capabilities are device specific fields, not channel specific fields.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
drivers/dma/imx-dma.c

index 8262708..e18eaab 100644 (file)
@@ -345,6 +345,9 @@ static int __init imxdma_probe(struct platform_device *pdev)
 
        INIT_LIST_HEAD(&imxdma->dma_device.channels);
 
+       dma_cap_set(DMA_SLAVE, imxdma->dma_device.cap_mask);
+       dma_cap_set(DMA_CYCLIC, imxdma->dma_device.cap_mask);
+
        /* Initialize channel parameters */
        for (i = 0; i < MAX_DMA_CHANNELS; i++) {
                struct imxdma_channel *imxdmac = &imxdma->channel[i];
@@ -362,9 +365,6 @@ static int __init imxdma_probe(struct platform_device *pdev)
                imxdmac->imxdma = imxdma;
                spin_lock_init(&imxdmac->lock);
 
-               dma_cap_set(DMA_SLAVE, imxdma->dma_device.cap_mask);
-               dma_cap_set(DMA_CYCLIC, imxdma->dma_device.cap_mask);
-
                imxdmac->chan.device = &imxdma->dma_device;
                imxdmac->channel = i;