提交 dd3daca1 编写于 作者: J Jingoo Han 提交者: Vinod Koul

dma: use platform_{get,set}_drvdata()

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: NJingoo Han <jg1.han@samsung.com>
Signed-off-by: NVinod Koul <vinod.koul@intel.com>
上级 d48de6f1
...@@ -1368,7 +1368,7 @@ static int fsldma_of_probe(struct platform_device *op) ...@@ -1368,7 +1368,7 @@ static int fsldma_of_probe(struct platform_device *op)
dma_set_mask(&(op->dev), DMA_BIT_MASK(36)); 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 * We cannot use of_platform_bus_probe() because there is no
...@@ -1417,7 +1417,7 @@ static int fsldma_of_remove(struct platform_device *op) ...@@ -1417,7 +1417,7 @@ static int fsldma_of_remove(struct platform_device *op)
struct fsldma_device *fdev; struct fsldma_device *fdev;
unsigned int i; unsigned int i;
fdev = dev_get_drvdata(&op->dev); fdev = platform_get_drvdata(op);
dma_async_device_unregister(&fdev->common); dma_async_device_unregister(&fdev->common);
fsldma_free_irqs(fdev); fsldma_free_irqs(fdev);
...@@ -1428,7 +1428,6 @@ static int fsldma_of_remove(struct platform_device *op) ...@@ -1428,7 +1428,6 @@ static int fsldma_of_remove(struct platform_device *op)
} }
iounmap(fdev->regs); iounmap(fdev->regs);
dev_set_drvdata(&op->dev, NULL);
kfree(fdev); kfree(fdev);
return 0; return 0;
......
...@@ -4481,7 +4481,7 @@ static int ppc440spe_adma_probe(struct platform_device *ofdev) ...@@ -4481,7 +4481,7 @@ static int ppc440spe_adma_probe(struct platform_device *ofdev)
adev->dev = &ofdev->dev; adev->dev = &ofdev->dev;
adev->common.dev = &ofdev->dev; adev->common.dev = &ofdev->dev;
INIT_LIST_HEAD(&adev->common.channels); INIT_LIST_HEAD(&adev->common.channels);
dev_set_drvdata(&ofdev->dev, adev); platform_set_drvdata(ofdev, adev);
/* create a channel */ /* create a channel */
chan = kzalloc(sizeof(*chan), GFP_KERNEL); chan = kzalloc(sizeof(*chan), GFP_KERNEL);
...@@ -4594,14 +4594,13 @@ static int ppc440spe_adma_probe(struct platform_device *ofdev) ...@@ -4594,14 +4594,13 @@ static int ppc440spe_adma_probe(struct platform_device *ofdev)
*/ */
static int ppc440spe_adma_remove(struct platform_device *ofdev) 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 device_node *np = ofdev->dev.of_node;
struct resource res; struct resource res;
struct dma_chan *chan, *_chan; struct dma_chan *chan, *_chan;
struct ppc_dma_chan_ref *ref, *_ref; struct ppc_dma_chan_ref *ref, *_ref;
struct ppc440spe_adma_chan *ppc440spe_chan; struct ppc440spe_adma_chan *ppc440spe_chan;
dev_set_drvdata(&ofdev->dev, NULL);
if (adev->id < PPC440SPE_ADMA_ENGINES_NUM) if (adev->id < PPC440SPE_ADMA_ENGINES_NUM)
ppc440spe_adma_devices[adev->id] = -1; ppc440spe_adma_devices[adev->id] = -1;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册