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

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

index 3e848ee9a18abbe57e58e9481ab219c134b644a2..eb250681804b934cf50f377e366662db582159b6 100644 (file)
@@ -1295,6 +1295,9 @@ static int __init sdma_probe(struct platform_device *pdev)
 
        sdma->version = pdata->sdma_version;
 
+       dma_cap_set(DMA_SLAVE, sdma->dma_device.cap_mask);
+       dma_cap_set(DMA_CYCLIC, sdma->dma_device.cap_mask);
+
        INIT_LIST_HEAD(&sdma->dma_device.channels);
        /* Initialize channel parameters */
        for (i = 0; i < MAX_DMA_CHANNELS; i++) {
@@ -1303,9 +1306,6 @@ static int __init sdma_probe(struct platform_device *pdev)
                sdmac->sdma = sdma;
                spin_lock_init(&sdmac->lock);
 
-               dma_cap_set(DMA_SLAVE, sdma->dma_device.cap_mask);
-               dma_cap_set(DMA_CYCLIC, sdma->dma_device.cap_mask);
-
                sdmac->chan.device = &sdma->dma_device;
                sdmac->channel = i;