Skip to content

Commit 7ec53e2

Browse files
Li Zetaomiquelraynal
authored andcommitted
mtd: rawnand: stm32_fmc2: Use helper function devm_clk_get_enabled()
Since commit 7ef9651 ("clk: Provide new devm_clk helpers for prepared and enabled clocks"), devm_clk_get() and clk_prepare_enable() can now be replaced by devm_clk_get_enabled() when driver enables (and possibly prepares) the clocks for the whole lifetime of the device. Moreover, it is no longer necessary to unprepare and disable the clocks explicitly, so drop the label "err_clk_disable". Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com> Signed-off-by: Li Zetao <lizetao1@huawei.com> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> Link: https://lore.kernel.org/linux-mtd/20230821031737.1973183-9-lizetao1@huawei.com
1 parent 2b34e8b commit 7ec53e2

File tree

1 file changed

+4
-13
lines changed

1 file changed

+4
-13
lines changed

drivers/mtd/nand/raw/stm32_fmc2_nand.c

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1951,21 +1951,17 @@ static int stm32_fmc2_nfc_probe(struct platform_device *pdev)
19511951

19521952
init_completion(&nfc->complete);
19531953

1954-
nfc->clk = devm_clk_get(nfc->cdev, NULL);
1955-
if (IS_ERR(nfc->clk))
1954+
nfc->clk = devm_clk_get_enabled(nfc->cdev, NULL);
1955+
if (IS_ERR(nfc->clk)) {
1956+
dev_err(dev, "can not get and enable the clock\n");
19561957
return PTR_ERR(nfc->clk);
1957-
1958-
ret = clk_prepare_enable(nfc->clk);
1959-
if (ret) {
1960-
dev_err(dev, "can not enable the clock\n");
1961-
return ret;
19621958
}
19631959

19641960
rstc = devm_reset_control_get(dev, NULL);
19651961
if (IS_ERR(rstc)) {
19661962
ret = PTR_ERR(rstc);
19671963
if (ret == -EPROBE_DEFER)
1968-
goto err_clk_disable;
1964+
return ret;
19691965
} else {
19701966
reset_control_assert(rstc);
19711967
reset_control_deassert(rstc);
@@ -2018,9 +2014,6 @@ static int stm32_fmc2_nfc_probe(struct platform_device *pdev)
20182014
sg_free_table(&nfc->dma_data_sg);
20192015
sg_free_table(&nfc->dma_ecc_sg);
20202016

2021-
err_clk_disable:
2022-
clk_disable_unprepare(nfc->clk);
2023-
20242017
return ret;
20252018
}
20262019

@@ -2045,8 +2038,6 @@ static void stm32_fmc2_nfc_remove(struct platform_device *pdev)
20452038
sg_free_table(&nfc->dma_data_sg);
20462039
sg_free_table(&nfc->dma_ecc_sg);
20472040

2048-
clk_disable_unprepare(nfc->clk);
2049-
20502041
stm32_fmc2_nfc_wp_enable(nand);
20512042
}
20522043

0 commit comments

Comments
 (0)