summaryrefslogtreecommitdiff
path: root/drivers/net/dsa/microchip
diff options
context:
space:
mode:
authorOleksij Rempel <o.rempel@pengutronix.de>2024-11-06 08:59:39 +0100
committerJakub Kicinski <kuba@kernel.org>2024-11-11 16:04:32 -0800
commit8bbba4161b6557ba8effc443072e70c16da24e6f (patch)
treeb3fd15d5cc7d7a730f20df88f6e5689d5d12012a /drivers/net/dsa/microchip
parent9afaf0eec2ab6bcfa227ab528fbdf2881fa7a293 (diff)
net: dsa: microchip: cleanup error handling in ksz_mdio_register
Replace repeated cleanup code with a single error path using a label. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Link: https://patch.msgid.link/20241106075942.1636998-5-o.rempel@pengutronix.de Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/dsa/microchip')
-rw-r--r--drivers/net/dsa/microchip/ksz_common.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/net/dsa/microchip/ksz_common.c b/drivers/net/dsa/microchip/ksz_common.c
index e9460650d46e..26a4a8b49dc8 100644
--- a/drivers/net/dsa/microchip/ksz_common.c
+++ b/drivers/net/dsa/microchip/ksz_common.c
@@ -2409,8 +2409,8 @@ static int ksz_mdio_register(struct ksz_device *dev)
bus = devm_mdiobus_alloc(ds->dev);
if (!bus) {
- of_node_put(mdio_np);
- return -ENOMEM;
+ ret = -ENOMEM;
+ goto put_mdio_node;
}
if (dev->dev_ops->mdio_bus_preinit) {
@@ -2455,10 +2455,8 @@ static int ksz_mdio_register(struct ksz_device *dev)
if (dev->irq > 0) {
ret = ksz_irq_phy_setup(dev);
- if (ret) {
- of_node_put(mdio_np);
- return ret;
- }
+ if (ret)
+ goto put_mdio_node;
}
ret = devm_of_mdiobus_register(ds->dev, bus, mdio_np);