mirror of https://gitee.com/openkylin/linux.git
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: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
This commit is contained in:
parent
d48de6f1a8
commit
dd3daca162
|
@ -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)
|
||||||
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)
|
||||||
}
|
}
|
||||||
|
|
||||||
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)
|
||||||
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)
|
||||||
*/
|
*/
|
||||||
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;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue