[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250201172745.56627-1-biju.das.jz@bp.renesas.com>
Date: Sat, 1 Feb 2025 17:27:40 +0000
From: Biju Das <biju.das.jz@...renesas.com>
To: Andrew Lunn <andrew+netdev@...n.ch>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>,
Andreas Färber <afaerber@...e.de>,
Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>
Cc: Biju Das <biju.das.jz@...renesas.com>,
netdev@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linux-actions@...ts.infradead.org,
Geert Uytterhoeven <geert+renesas@...der.be>,
Biju Das <biju.das.au@...il.com>
Subject: [PATCH v2] net: ethernet: actions: Use of_get_available_child_by_name()
Use the helper of_get_available_child_by_name() to simplify
owl_emac_mdio_init().
Signed-off-by: Biju Das <biju.das.jz@...renesas.com>
---
v1->v3:
* Dropped duplicate mdio_node declaration.
This patch is only compile tested and depend upon[1]
[1] https://lore.kernel.org/all/20250201093126.7322-1-biju.das.jz@bp.renesas.com/
---
drivers/net/ethernet/actions/owl-emac.c | 22 +++++-----------------
1 file changed, 5 insertions(+), 17 deletions(-)
diff --git a/drivers/net/ethernet/actions/owl-emac.c b/drivers/net/ethernet/actions/owl-emac.c
index 115f48b3342c..c5a00c09b1ea 100644
--- a/drivers/net/ethernet/actions/owl-emac.c
+++ b/drivers/net/ethernet/actions/owl-emac.c
@@ -1322,23 +1322,15 @@ static int owl_emac_mdio_init(struct net_device *netdev)
{
struct owl_emac_priv *priv = netdev_priv(netdev);
struct device *dev = owl_emac_get_dev(priv);
- struct device_node *mdio_node;
- int ret;
+ struct device_node *mdio_node _free(device_node) =
+ of_get_available_child_by_name(dev->of_node, "mdio");
- mdio_node = of_get_child_by_name(dev->of_node, "mdio");
if (!mdio_node)
return -ENODEV;
- if (!of_device_is_available(mdio_node)) {
- ret = -ENODEV;
- goto err_put_node;
- }
-
priv->mii = devm_mdiobus_alloc(dev);
- if (!priv->mii) {
- ret = -ENOMEM;
- goto err_put_node;
- }
+ if (!priv->mii)
+ return -ENOMEM;
snprintf(priv->mii->id, MII_BUS_ID_SIZE, "%s", dev_name(dev));
priv->mii->name = "owl-emac-mdio";
@@ -1348,11 +1340,7 @@ static int owl_emac_mdio_init(struct net_device *netdev)
priv->mii->phy_mask = ~0; /* Mask out all PHYs from auto probing. */
priv->mii->priv = priv;
- ret = devm_of_mdiobus_register(dev, priv->mii, mdio_node);
-
-err_put_node:
- of_node_put(mdio_node);
- return ret;
+ return devm_of_mdiobus_register(dev, priv->mii, mdio_node);
}
static int owl_emac_phy_init(struct net_device *netdev)
--
2.43.0
Powered by blists - more mailing lists