net: ag71xx: add missed clk_disable_unprepare in error path of probe
authorHuang Guobin <huangguobin4@huawei.com>
Mon, 20 Jul 2020 01:46:14 +0000 (21:46 -0400)
committerDavid S. Miller <davem@davemloft.net>
Tue, 21 Jul 2020 01:37:38 +0000 (18:37 -0700)
The ag71xx_mdio_probe() forgets to call clk_disable_unprepare() when
of_reset_control_get_exclusive() failed. Add the missed call to fix it.

Fixes: d51b6ce441d3 ("net: ethernet: add ag71xx driver")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Huang Guobin <huangguobin4@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/atheros/ag71xx.c

index 112edbd..38cce66 100644 (file)
@@ -556,7 +556,8 @@ static int ag71xx_mdio_probe(struct ag71xx *ag)
        ag->mdio_reset = of_reset_control_get_exclusive(np, "mdio");
        if (IS_ERR(ag->mdio_reset)) {
                netif_err(ag, probe, ndev, "Failed to get reset mdio.\n");
-               return PTR_ERR(ag->mdio_reset);
+               err = PTR_ERR(ag->mdio_reset);
+               goto mdio_err_put_clk;
        }
 
        mii_bus->name = "ag71xx_mdio";