The various devm_ functions allocate memory that is released when a driver
detaches.  This patch uses these functions for data that is allocated in
the probe function of a platform device and is only freed in the remove
function.
Signed-off-by: Damien Cassou <damien.cassou@lifl.fr>
Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
        unsigned int i;
        int ret;
 
-       data = dma_alloc_coherent(&pdev->dev, sizeof(struct fsl_diu_data),
-                                 &dma_addr, GFP_DMA | __GFP_ZERO);
+       data = dmam_alloc_coherent(&pdev->dev, sizeof(struct fsl_diu_data),
+                                  &dma_addr, GFP_DMA | __GFP_ZERO);
        if (!data)
                return -ENOMEM;
        data->dma_addr = dma_addr;
 
        iounmap(data->diu_reg);
 
-       dma_free_coherent(&pdev->dev, sizeof(struct fsl_diu_data), data,
-                         data->dma_addr);
-
        return ret;
 }
 
 
        iounmap(data->diu_reg);
 
-       dma_free_coherent(&pdev->dev, sizeof(struct fsl_diu_data), data,
-                         data->dma_addr);
-
        return 0;
 }