Skip to content

Commit

Permalink
spi: tegra20-slink: add missed clk_unprepare
Browse files Browse the repository at this point in the history
The driver misses calling clk_unprepare in probe failure and remove.
Add the calls to fix it.

Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
Link: https://lore.kernel.org/r/20191115083122.12278-1-hslester96@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
  • Loading branch information
Chuhong Yuan authored and Mark Brown committed Nov 15, 2019
1 parent 912a7df commit 04358e4
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion drivers/spi/spi-tegra20-slink.c
Original file line number Diff line number Diff line change
Expand Up @@ -1072,7 +1072,7 @@ static int tegra_slink_probe(struct platform_device *pdev)
ret = clk_enable(tspi->clk);
if (ret < 0) {
dev_err(&pdev->dev, "Clock enable failed %d\n", ret);
goto exit_free_master;
goto exit_clk_unprepare;
}

spi_irq = platform_get_irq(pdev, 0);
Expand Down Expand Up @@ -1145,6 +1145,8 @@ static int tegra_slink_probe(struct platform_device *pdev)
free_irq(spi_irq, tspi);
exit_clk_disable:
clk_disable(tspi->clk);
exit_clk_unprepare:
clk_unprepare(tspi->clk);
exit_free_master:
spi_master_put(master);
return ret;
Expand All @@ -1158,6 +1160,7 @@ static int tegra_slink_remove(struct platform_device *pdev)
free_irq(tspi->irq, tspi);

clk_disable(tspi->clk);
clk_unprepare(tspi->clk);

if (tspi->tx_dma_chan)
tegra_slink_deinit_dma_param(tspi, false);
Expand Down

0 comments on commit 04358e4

Please sign in to comment.