]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
mtd: st_spi_fsm: Add a clk_disable_unprepare() in .probe()'s error path
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tue, 7 Jun 2022 15:24:55 +0000 (17:24 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 21 Aug 2022 13:15:53 +0000 (15:15 +0200)
[ Upstream commit 28607b426c3d050714f250d0faeb99d2e9106e90 ]

For all but one error path clk_disable_unprepare() is already there. Add
it to the one location where it's missing.

Fixes: 481815a6193b ("mtd: st_spi_fsm: Handle clk_prepare_enable/clk_disable_unprepare.")
Fixes: 69d5af8d016c ("mtd: st_spi_fsm: Obtain and use EMI clock")
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20220607152458.232847-2-u.kleine-koenig@pengutronix.de
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/mtd/devices/st_spi_fsm.c

index 1888523d9745f0782ca5ef5a7a6b4980b4487677..9bee99f07af0c419124d441d26e09d73a2ba7d9a 100644 (file)
@@ -2115,10 +2115,12 @@ static int stfsm_probe(struct platform_device *pdev)
                (long long)fsm->mtd.size, (long long)(fsm->mtd.size >> 20),
                fsm->mtd.erasesize, (fsm->mtd.erasesize >> 10));
 
-       return mtd_device_register(&fsm->mtd, NULL, 0);
-
+       ret = mtd_device_register(&fsm->mtd, NULL, 0);
+       if (ret) {
 err_clk_unprepare:
-       clk_disable_unprepare(fsm->clk);
+               clk_disable_unprepare(fsm->clk);
+       }
+
        return ret;
 }