mirror of
https://github.com/torvalds/linux.git
synced 2026-05-23 06:31:58 +02:00
spi: cadence-quadspi: add missing clk_disable_unprepare() in cqspi_probe()
cqspi_jh7110_clk_init() is called after clk_prepare_enable(cqspi->clk),
if it fails, it should goto label 'probe_reset_failed' to disable
cqspi->clk.
In the error path after calling cqspi_jh7110_clk_init(),
cqspi_jh7110_disable_clk() need be called.
Fixes: 33f1ef6d4e ("spi: cadence-quadspi: Add clock configuration for StarFive JH7110 QSPI")
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Link: https://lore.kernel.org/r/20231129081147.628004-1-yangyingliang@huawei.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
06891af270
commit
5cb475174c
|
|
@ -1840,7 +1840,7 @@ static int cqspi_probe(struct platform_device *pdev)
|
|||
if (ddata->jh7110_clk_init) {
|
||||
ret = cqspi_jh7110_clk_init(pdev, cqspi);
|
||||
if (ret)
|
||||
goto probe_clk_failed;
|
||||
goto probe_reset_failed;
|
||||
}
|
||||
|
||||
if (of_device_is_compatible(pdev->dev.of_node,
|
||||
|
|
@ -1901,6 +1901,8 @@ static int cqspi_probe(struct platform_device *pdev)
|
|||
probe_setup_failed:
|
||||
cqspi_controller_enable(cqspi, 0);
|
||||
probe_reset_failed:
|
||||
if (cqspi->is_jh7110)
|
||||
cqspi_jh7110_disable_clk(pdev, cqspi);
|
||||
clk_disable_unprepare(cqspi->clk);
|
||||
probe_clk_failed:
|
||||
return ret;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user