mmc: au1xmmc: Fix an error handling path in au1xmmc_probe()
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Thu, 25 Aug 2022 07:33:57 +0000 (09:33 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 26 Oct 2022 10:34:55 +0000 (12:34 +0200)
[ Upstream commit 5cbedf52608cc3cbc1c2a9a861fb671620427a20 ]

If clk_prepare_enable() fails, there is no point in calling
clk_disable_unprepare() in the error handling path.

Move the out_clk label at the right place.

Fixes: b6507596dfd6 ("MIPS: Alchemy: au1xmmc: use clk framework")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/21d99886d07fa7fcbec74992657dabad98c935c4.1661412818.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mmc/host/au1xmmc.c

index 0acc237..f5f9cb7 100644 (file)
@@ -1095,8 +1095,9 @@ out5:
        if (host->platdata && host->platdata->cd_setup &&
            !(mmc->caps & MMC_CAP_NEEDS_POLL))
                host->platdata->cd_setup(mmc, 0);
-out_clk:
+
        clk_disable_unprepare(host->clk);
+out_clk:
        clk_put(host->clk);
 out_irq:
        free_irq(host->irq, host);