]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
net: phy: mscc: Handle devm_phy_package_join() failure in vsc85xx_probe_common()
authorLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Wed, 12 Nov 2025 13:57:15 +0000 (13:57 +0000)
committerJakub Kicinski <kuba@kernel.org>
Fri, 14 Nov 2025 01:48:43 +0000 (17:48 -0800)
devm_phy_package_join() may fail and return a negative error code.
Update vsc85xx_probe_common() to properly handle this failure by
checking the return value and propagating the error to the caller.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://patch.msgid.link/20251112135715.1017117-5-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/phy/mscc/mscc_main.c

index 21fcaf07bc6d586c436e256426492f2572abec2f..2b9fb8a675a65821a0709d93e778ca977cdf380c 100644 (file)
@@ -2264,8 +2264,11 @@ static int vsc85xx_probe_common(struct phy_device *phydev,
        /* Set up package if needed */
        if (cfg->use_package) {
                vsc8584_get_base_addr(phydev);
-               devm_phy_package_join(&phydev->mdio.dev, phydev,
-                                     vsc8531->base_addr, cfg->shared_size);
+               ret = devm_phy_package_join(&phydev->mdio.dev, phydev,
+                                           vsc8531->base_addr,
+                                           cfg->shared_size);
+               if (ret)
+                       return ret;
        }
 
        /* Configure LED settings */