]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
ar8216: use devm for mdiobus consistently 22998/head
authorRosen Penev <rosenp@gmail.com>
Thu, 23 Apr 2026 06:37:22 +0000 (23:37 -0700)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 24 May 2026 22:36:10 +0000 (00:36 +0200)
devm_mdiobus_alloc is already used. Be consistent and use
devm_of_mdiobus_register.

Also add a missing of_node_put for the mdio node.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22998
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
target/linux/generic/files/drivers/net/phy/ar8216.c

index c1988defcae6fde227b6cfb1cd6da338749e8c3a..71bf0bf04d260a3ea74ba6aedca5d0a245052e52 100644 (file)
@@ -2793,7 +2793,8 @@ ar8xxx_mdiodev_probe(struct mdio_device *mdiodev)
                snprintf(priv->sw_mii_bus->id, MII_BUS_ID_SIZE, "%s",
                         dev_name(&mdiodev->dev));
                mdio_node = of_get_child_by_name(priv->pdev->of_node, "mdio-bus");
-               ret = of_mdiobus_register(priv->sw_mii_bus, mdio_node);
+               ret = devm_of_mdiobus_register(priv->pdev, priv->sw_mii_bus, mdio_node);
+               of_node_put(mdio_node);
                if (ret)
                        goto free_priv;
        }
@@ -2859,8 +2860,6 @@ ar8xxx_mdiodev_remove(struct mdio_device *mdiodev)
 
        unregister_switch(&priv->dev);
        ar8xxx_mib_stop(priv);
-       if(priv->sw_mii_bus)
-               mdiobus_unregister(priv->sw_mii_bus);
        ar8xxx_free(priv);
 }