diff options
author | Fabio Estevam <[email protected]> | 2016-08-21 23:05:30 -0300 |
---|---|---|
committer | Mark Brown <[email protected]> | 2016-08-22 17:32:42 +0100 |
commit | 1c5ea2b4de22434b9da9c33640f47458ba093dea (patch) | |
tree | b830fdc189126a2c2601ddfebdbdec901c66475f | |
parent | 53d89160753c7d32bb82d3bed980fd3dc3f2538a (diff) |
spi: spi-fsl-dspi: Check clk_prepare_enable() error
clk_prepare_enable() may fail, so we should better check its
return value and propagate it in the case of failure.
Signed-off-by: Fabio Estevam <[email protected]>
Signed-off-by: Mark Brown <[email protected]>
-rw-r--r-- | drivers/spi/spi-fsl-dspi.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/spi/spi-fsl-dspi.c b/drivers/spi/spi-fsl-dspi.c index d57baf6c2d1e..95d8b929cd52 100644 --- a/drivers/spi/spi-fsl-dspi.c +++ b/drivers/spi/spi-fsl-dspi.c @@ -624,10 +624,13 @@ static int dspi_resume(struct device *dev) { struct spi_master *master = dev_get_drvdata(dev); struct fsl_dspi *dspi = spi_master_get_devdata(master); + int ret; pinctrl_pm_select_default_state(dev); - clk_prepare_enable(dspi->clk); + ret = clk_prepare_enable(dspi->clk); + if (ret) + return ret; spi_master_resume(master); return 0; @@ -726,7 +729,9 @@ static int dspi_probe(struct platform_device *pdev) dev_err(&pdev->dev, "unable to get clock\n"); goto out_master_put; } - clk_prepare_enable(dspi->clk); + ret = clk_prepare_enable(dspi->clk); + if (ret) + goto out_master_put; master->max_speed_hz = clk_get_rate(dspi->clk) / dspi->devtype_data->max_clock_factor; |