diff mbox series

net: gem: unregister mdio bus if probe fails

Message ID 20210210214157.15170-1-michael@walle.cc
State Accepted
Commit 038e02455bbc18d34946fdfe77faf2062adc3e2a
Delegated to: Michal Simek
Headers show
Series net: gem: unregister mdio bus if probe fails | expand

Commit Message

Michael Walle Feb. 10, 2021, 9:41 p.m. UTC
If probe fails, the mdio bus isn't unregistered. Fix it.

Signed-off-by: Michael Walle <michael@walle.cc>
---
 drivers/net/zynq_gem.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Ramon Fried Feb. 11, 2021, 3:44 p.m. UTC | #1
On Wed, Feb 10, 2021 at 11:42 PM Michael Walle <michael@walle.cc> wrote:
>
> If probe fails, the mdio bus isn't unregistered. Fix it.
>
> Signed-off-by: Michael Walle <michael@walle.cc>
> ---
>  drivers/net/zynq_gem.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c
> index 5cb02bb3a7..585c06d6bd 100644
> --- a/drivers/net/zynq_gem.c
> +++ b/drivers/net/zynq_gem.c
> @@ -711,10 +711,12 @@ static int zynq_gem_probe(struct udevice *dev)
>
>         ret = zynq_phy_init(dev);
>         if (ret)
> -               goto err2;
> +               goto err3;
>
>         return ret;
>
> +err3:
> +       mdio_unregister(priv->bus);
>  err2:
>         free(priv->rxbuffers);
>  err1:
> --
> 2.20.1
>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Michal Simek Feb. 11, 2021, 6:02 p.m. UTC | #2
On 2/10/21 10:41 PM, Michael Walle wrote:
> If probe fails, the mdio bus isn't unregistered. Fix it.
> 
> Signed-off-by: Michael Walle <michael@walle.cc>
> ---
>  drivers/net/zynq_gem.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c
> index 5cb02bb3a7..585c06d6bd 100644
> --- a/drivers/net/zynq_gem.c
> +++ b/drivers/net/zynq_gem.c
> @@ -711,10 +711,12 @@ static int zynq_gem_probe(struct udevice *dev)
>  
>  	ret = zynq_phy_init(dev);
>  	if (ret)
> -		goto err2;
> +		goto err3;
>  
>  	return ret;
>  
> +err3:
> +	mdio_unregister(priv->bus);
>  err2:
>  	free(priv->rxbuffers);
>  err1:
> 


Applied.
M
diff mbox series

Patch

diff --git a/drivers/net/zynq_gem.c b/drivers/net/zynq_gem.c
index 5cb02bb3a7..585c06d6bd 100644
--- a/drivers/net/zynq_gem.c
+++ b/drivers/net/zynq_gem.c
@@ -711,10 +711,12 @@  static int zynq_gem_probe(struct udevice *dev)
 
 	ret = zynq_phy_init(dev);
 	if (ret)
-		goto err2;
+		goto err3;
 
 	return ret;
 
+err3:
+	mdio_unregister(priv->bus);
 err2:
 	free(priv->rxbuffers);
 err1: