]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
dma: use platform_{get,set}_drvdata()
authorJingoo Han <jg1.han@samsung.com>
Fri, 24 May 2013 01:10:13 +0000 (10:10 +0900)
committerVinod Koul <vinod.koul@intel.com>
Wed, 12 Jun 2013 02:18:52 +0000 (07:48 +0530)
Use the wrapper functions for getting and setting the driver data using
platform_device instead of using dev_{get,set}_drvdata() with &pdev->dev,
so we can directly pass a struct platform_device.

Also, unnecessary dev_set_drvdata() is removed, because the driver core
clears the driver data to NULL after device_release or on probe failure.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/fsldma.c
drivers/dma/ppc4xx/adma.c

index 4fc2980556ad92f967d4c1ea93c3301118100843..49e8fbdb898388703ac5db7e306e4c5f39d88a19 100644 (file)
@@ -1368,7 +1368,7 @@ static int fsldma_of_probe(struct platform_device *op)
 
        dma_set_mask(&(op->dev), DMA_BIT_MASK(36));
 
-       dev_set_drvdata(&op->dev, fdev);
+       platform_set_drvdata(op, fdev);
 
        /*
         * We cannot use of_platform_bus_probe() because there is no
@@ -1417,7 +1417,7 @@ static int fsldma_of_remove(struct platform_device *op)
        struct fsldma_device *fdev;
        unsigned int i;
 
-       fdev = dev_get_drvdata(&op->dev);
+       fdev = platform_get_drvdata(op);
        dma_async_device_unregister(&fdev->common);
 
        fsldma_free_irqs(fdev);
@@ -1428,7 +1428,6 @@ static int fsldma_of_remove(struct platform_device *op)
        }
 
        iounmap(fdev->regs);
-       dev_set_drvdata(&op->dev, NULL);
        kfree(fdev);
 
        return 0;
index 5d3d95569a1e76afc6e294a09ccf538846cae9f6..e68c51d13cb1e9dff2f4b085f1d868c3860d1abc 100644 (file)
@@ -4481,7 +4481,7 @@ static int ppc440spe_adma_probe(struct platform_device *ofdev)
        adev->dev = &ofdev->dev;
        adev->common.dev = &ofdev->dev;
        INIT_LIST_HEAD(&adev->common.channels);
-       dev_set_drvdata(&ofdev->dev, adev);
+       platform_set_drvdata(ofdev, adev);
 
        /* create a channel */
        chan = kzalloc(sizeof(*chan), GFP_KERNEL);
@@ -4594,14 +4594,13 @@ out:
  */
 static int ppc440spe_adma_remove(struct platform_device *ofdev)
 {
-       struct ppc440spe_adma_device *adev = dev_get_drvdata(&ofdev->dev);
+       struct ppc440spe_adma_device *adev = platform_get_drvdata(ofdev);
        struct device_node *np = ofdev->dev.of_node;
        struct resource res;
        struct dma_chan *chan, *_chan;
        struct ppc_dma_chan_ref *ref, *_ref;
        struct ppc440spe_adma_chan *ppc440spe_chan;
 
-       dev_set_drvdata(&ofdev->dev, NULL);
        if (adev->id < PPC440SPE_ADMA_ENGINES_NUM)
                ppc440spe_adma_devices[adev->id] = -1;