Use the device-managed variant for the allocating the MDIO bus. This cleans-up the code a little on the remove and error paths. Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@xxxxxxxxxxxxx> --- drivers/net/ethernet/cadence/macb_main.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c index a6a35e1b0115..89fe7af5e408 100644 --- a/drivers/net/ethernet/cadence/macb_main.c +++ b/drivers/net/ethernet/cadence/macb_main.c @@ -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); -- 2.25.1