diff mbox series

net: ethernet: actions: Use of_get_available_child_by_name()

Message ID 20250201171530.54612-1-biju.das.jz@bp.renesas.com (mailing list archive)
State New, archived
Headers show
Series net: ethernet: actions: Use of_get_available_child_by_name() | expand

Commit Message

Biju Das Feb. 1, 2025, 5:15 p.m. UTC
Use the helper of_get_available_child_by_name() to simplify
owl_emac_mdio_init().

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
---
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 | 21 +++++----------------
 1 file changed, 5 insertions(+), 16 deletions(-)

Comments

Manivannan Sadhasivam Feb. 7, 2025, 5:39 p.m. UTC | #1
On Sat, Feb 01, 2025 at 05:15:18PM +0000, Biju Das wrote:
> Use the helper of_get_available_child_by_name() to simplify
> owl_emac_mdio_init().
> 
> Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>

Acked-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>

- Mani

> ---
> 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 | 21 +++++----------------
>  1 file changed, 5 insertions(+), 16 deletions(-)
> 
> diff --git a/drivers/net/ethernet/actions/owl-emac.c b/drivers/net/ethernet/actions/owl-emac.c
> index 115f48b3342c..3457ce041335 100644
> --- a/drivers/net/ethernet/actions/owl-emac.c
> +++ b/drivers/net/ethernet/actions/owl-emac.c
> @@ -1323,22 +1323,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 +1341,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
>
Biju Das Feb. 7, 2025, 5:43 p.m. UTC | #2
Hi Manivannan Sadhasivam,

> -----Original Message-----
> From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> Sent: 07 February 2025 17:40
> Subject: Re: [PATCH] net: ethernet: actions: Use of_get_available_child_by_name()
> 
> On Sat, Feb 01, 2025 at 05:15:18PM +0000, Biju Das wrote:
> > Use the helper of_get_available_child_by_name() to simplify
> > owl_emac_mdio_init().
> >
> > Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
> 
> Acked-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>

V2 version [1] dropping usage of _free in net is posted and is applied in net-next

[1] https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=76c82eb04332b0447b726a4a794e906669964008

Cheers,
Biju



> 
> - Mani
> 
> > ---
> > This patch is only compile tested and depend upon[1] [1]
> > https://lore.kernel.org/all/20250201093126.7322-1-biju.das.jz@bp.renes
> > as.com/
> > ---
> >  drivers/net/ethernet/actions/owl-emac.c | 21 +++++----------------
> >  1 file changed, 5 insertions(+), 16 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/actions/owl-emac.c
> > b/drivers/net/ethernet/actions/owl-emac.c
> > index 115f48b3342c..3457ce041335 100644
> > --- a/drivers/net/ethernet/actions/owl-emac.c
> > +++ b/drivers/net/ethernet/actions/owl-emac.c
> > @@ -1323,22 +1323,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 +1341,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
> >
> 
> --
> மணிவண்ணன் சதாசிவம்
diff mbox series

Patch

diff --git a/drivers/net/ethernet/actions/owl-emac.c b/drivers/net/ethernet/actions/owl-emac.c
index 115f48b3342c..3457ce041335 100644
--- a/drivers/net/ethernet/actions/owl-emac.c
+++ b/drivers/net/ethernet/actions/owl-emac.c
@@ -1323,22 +1323,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 +1341,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)