]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
net: mdio: remove redundant fwnode cleanup
authorBuday Csaba <buday.csaba@prolan.hu>
Mon, 24 Nov 2025 14:50:44 +0000 (15:50 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 26 Nov 2025 02:45:37 +0000 (18:45 -0800)
Remove redundant fwnode cleanup in of_mdiobus_register_device()
and xpcs_plat_init_dev().

mdio_device_free() eventually calls mdio_device_release(),
which already performs fwnode_handle_put(), making the manual
cleanup unnecessary.

Combine fwnode_handle_get() with device_set_node() in
of_mdiobus_register_device() for clarity.

Signed-off-by: Buday Csaba <buday.csaba@prolan.hu>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/00847693daa8f7c8ff5dfa19dd35fc712fa4e2b5.1763995734.git.buday.csaba@prolan.hu
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/mdio/of_mdio.c
drivers/net/pcs/pcs-xpcs-plat.c

index 1357348e01d5f96c7d86742cffa4dea7c250b4fb..b8d298c04d3ff09413d93e512ae036958aeba59a 100644 (file)
@@ -63,14 +63,11 @@ static int of_mdiobus_register_device(struct mii_bus *mdio,
        /* Associate the OF node with the device structure so it
         * can be looked up later.
         */
-       fwnode_handle_get(fwnode);
-       device_set_node(&mdiodev->dev, fwnode);
+       device_set_node(&mdiodev->dev, fwnode_handle_get(fwnode));
 
        /* All data is now stored in the mdiodev struct; register it. */
        rc = mdio_device_register(mdiodev);
        if (rc) {
-               device_set_node(&mdiodev->dev, NULL);
-               fwnode_handle_put(fwnode);
                mdio_device_free(mdiodev);
                return rc;
        }
index c422e8d8b89fcfb66fdbbff6f909cf1b0964cefb..b8c48f9effbf7885b6f429cc236a741cabcbdd3d 100644 (file)
@@ -365,9 +365,6 @@ static int xpcs_plat_init_dev(struct dw_xpcs_plat *pxpcs)
 err_clean_data:
        mdiodev->dev.platform_data = NULL;
 
-       fwnode_handle_put(dev_fwnode(&mdiodev->dev));
-       device_set_node(&mdiodev->dev, NULL);
-
        mdio_device_free(mdiodev);
 
        return ret;