@@ -769,7 +769,7 @@ static int macb_mii_init(struct macb *bp)
/* Enable management port */
macb_writel(bp, NCR, MACB_BIT(MPE));
- bp->mii_bus = mdiobus_alloc();
+ bp->mii_bus = devm_mdiobus_alloc(&bp->pdev->dev);
if (!bp->mii_bus) {
err = -ENOMEM;
goto err_out;
@@ -787,7 +787,7 @@ static int macb_mii_init(struct macb *bp)
err = macb_mdiobus_register(bp);
if (err)
- goto err_out_free_mdiobus;
+ goto err_out;
err = macb_mii_probe(bp->dev);
if (err)
@@ -797,8 +797,6 @@ static int macb_mii_init(struct macb *bp)
err_out_unregister_bus:
mdiobus_unregister(bp->mii_bus);
-err_out_free_mdiobus:
- mdiobus_free(bp->mii_bus);
err_out:
return err;
}
@@ -4571,7 +4569,6 @@ static int macb_probe(struct platform_device *pdev)
err_out_unregister_mdio:
mdiobus_unregister(bp->mii_bus);
- mdiobus_free(bp->mii_bus);
err_out_free_netdev:
free_netdev(dev);
@@ -4599,7 +4596,6 @@ static int macb_remove(struct platform_device *pdev)
if (dev) {
bp = netdev_priv(dev);
mdiobus_unregister(bp->mii_bus);
- mdiobus_free(bp->mii_bus);
unregister_netdev(dev);
tasklet_kill(&bp->hresp_err_tasklet);