net: ethernet: mtk-star-emac: use devm_of_mdiobus_register()
authorBartosz Golaszewski <bgolaszewski@baylibre.com>
Mon, 29 Jun 2020 12:03:46 +0000 (14:03 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 30 Jun 2020 22:57:34 +0000 (15:57 -0700)
Shrink the code by using the managed variant of of_mdiobus_register().

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mediatek/mtk_star_emac.c

index 3e765bdcf9e12267d939c58d3eff19ce1a8be78d..13250553263b55348fd50c74c149eedb96492f45 100644 (file)
@@ -1389,7 +1389,7 @@ static int mtk_star_mdio_init(struct net_device *ndev)
        priv->mii->write = mtk_star_mdio_write;
        priv->mii->priv = priv;
 
-       ret = of_mdiobus_register(priv->mii, mdio_node);
+       ret = devm_of_mdiobus_register(dev, priv->mii, mdio_node);
 
 out_put_node:
        of_node_put(mdio_node);
@@ -1441,13 +1441,6 @@ static void mtk_star_clk_disable_unprepare(void *data)
        clk_bulk_disable_unprepare(MTK_STAR_NCLKS, priv->clks);
 }
 
-static void mtk_star_mdiobus_unregister(void *data)
-{
-       struct mtk_star_priv *priv = data;
-
-       mdiobus_unregister(priv->mii);
-}
-
 static int mtk_star_probe(struct platform_device *pdev)
 {
        struct device_node *of_node;
@@ -1549,10 +1542,6 @@ static int mtk_star_probe(struct platform_device *pdev)
        if (ret)
                return ret;
 
-       ret = devm_add_action_or_reset(dev, mtk_star_mdiobus_unregister, priv);
-       if (ret)
-               return ret;
-
        ret = eth_platform_get_mac_address(dev, ndev->dev_addr);
        if (ret || !is_valid_ether_addr(ndev->dev_addr))
                eth_hw_addr_random(ndev);