net: ethernet: 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: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
6d0bfe2261
commit
8513fbd880
@@ -1048,7 +1048,7 @@ static int fs_enet_probe(struct platform_device *ofdev)
|
||||
}
|
||||
|
||||
SET_NETDEV_DEV(ndev, &ofdev->dev);
|
||||
dev_set_drvdata(&ofdev->dev, ndev);
|
||||
platform_set_drvdata(ofdev, ndev);
|
||||
|
||||
fep = netdev_priv(ndev);
|
||||
fep->dev = &ofdev->dev;
|
||||
@@ -1106,7 +1106,6 @@ out_cleanup_data:
|
||||
fep->ops->cleanup_data(ndev);
|
||||
out_free_dev:
|
||||
free_netdev(ndev);
|
||||
dev_set_drvdata(&ofdev->dev, NULL);
|
||||
out_put:
|
||||
of_node_put(fpi->phy_node);
|
||||
out_free_fpi:
|
||||
@@ -1116,7 +1115,7 @@ out_free_fpi:
|
||||
|
||||
static int fs_enet_remove(struct platform_device *ofdev)
|
||||
{
|
||||
struct net_device *ndev = dev_get_drvdata(&ofdev->dev);
|
||||
struct net_device *ndev = platform_get_drvdata(ofdev);
|
||||
struct fs_enet_private *fep = netdev_priv(ndev);
|
||||
|
||||
unregister_netdev(ndev);
|
||||
|
@@ -179,7 +179,7 @@ static int fs_enet_mdio_probe(struct platform_device *ofdev)
|
||||
}
|
||||
|
||||
new_bus->parent = &ofdev->dev;
|
||||
dev_set_drvdata(&ofdev->dev, new_bus);
|
||||
platform_set_drvdata(ofdev, new_bus);
|
||||
|
||||
ret = of_mdiobus_register(new_bus, ofdev->dev.of_node);
|
||||
if (ret)
|
||||
@@ -188,7 +188,6 @@ static int fs_enet_mdio_probe(struct platform_device *ofdev)
|
||||
return 0;
|
||||
|
||||
out_free_irqs:
|
||||
dev_set_drvdata(&ofdev->dev, NULL);
|
||||
kfree(new_bus->irq);
|
||||
out_unmap_regs:
|
||||
iounmap(bitbang->dir);
|
||||
@@ -202,11 +201,10 @@ out:
|
||||
|
||||
static int fs_enet_mdio_remove(struct platform_device *ofdev)
|
||||
{
|
||||
struct mii_bus *bus = dev_get_drvdata(&ofdev->dev);
|
||||
struct mii_bus *bus = platform_get_drvdata(ofdev);
|
||||
struct bb_info *bitbang = bus->priv;
|
||||
|
||||
mdiobus_unregister(bus);
|
||||
dev_set_drvdata(&ofdev->dev, NULL);
|
||||
kfree(bus->irq);
|
||||
free_mdio_bitbang(bus);
|
||||
iounmap(bitbang->dir);
|
||||
|
@@ -180,7 +180,7 @@ static int fs_enet_mdio_probe(struct platform_device *ofdev)
|
||||
}
|
||||
|
||||
new_bus->parent = &ofdev->dev;
|
||||
dev_set_drvdata(&ofdev->dev, new_bus);
|
||||
platform_set_drvdata(ofdev, new_bus);
|
||||
|
||||
ret = of_mdiobus_register(new_bus, ofdev->dev.of_node);
|
||||
if (ret)
|
||||
@@ -189,7 +189,6 @@ static int fs_enet_mdio_probe(struct platform_device *ofdev)
|
||||
return 0;
|
||||
|
||||
out_free_irqs:
|
||||
dev_set_drvdata(&ofdev->dev, NULL);
|
||||
kfree(new_bus->irq);
|
||||
out_unmap_regs:
|
||||
iounmap(fec->fecp);
|
||||
@@ -204,11 +203,10 @@ out:
|
||||
|
||||
static int fs_enet_mdio_remove(struct platform_device *ofdev)
|
||||
{
|
||||
struct mii_bus *bus = dev_get_drvdata(&ofdev->dev);
|
||||
struct mii_bus *bus = platform_get_drvdata(ofdev);
|
||||
struct fec_info *fec = bus->priv;
|
||||
|
||||
mdiobus_unregister(bus);
|
||||
dev_set_drvdata(&ofdev->dev, NULL);
|
||||
kfree(bus->irq);
|
||||
iounmap(fec->fecp);
|
||||
kfree(fec);
|
||||
|
Reference in New Issue
Block a user