diff options
author | Axel Lin <axel.lin@ingics.com> | 2014-02-25 20:47:55 -0500 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-03-10 07:21:57 -0400 |
commit | 2aa237f4a1a72813f9684a0ce6e48288e75de479 (patch) | |
tree | 86401e6f9afb4846afba3eae86a91ae9443c93d7 | |
parent | 3531b717d05273e45efd2ab7903ea013aaec3fea (diff) |
spi: coldfire-qspi: Enable clock before calling spi_master_resume
This ensures clock has been enabled before calling spi_master_resume().
while at it, also add checking return value of spi_master_suspend and
spi_master_resume because they may fail.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r-- | drivers/spi/spi-coldfire-qspi.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/spi/spi-coldfire-qspi.c b/drivers/spi/spi-coldfire-qspi.c index 8d594c6704ad..94d817523d5f 100644 --- a/drivers/spi/spi-coldfire-qspi.c +++ b/drivers/spi/spi-coldfire-qspi.c | |||
@@ -473,8 +473,11 @@ static int mcfqspi_suspend(struct device *dev) | |||
473 | { | 473 | { |
474 | struct spi_master *master = dev_get_drvdata(dev); | 474 | struct spi_master *master = dev_get_drvdata(dev); |
475 | struct mcfqspi *mcfqspi = spi_master_get_devdata(master); | 475 | struct mcfqspi *mcfqspi = spi_master_get_devdata(master); |
476 | int ret; | ||
476 | 477 | ||
477 | spi_master_suspend(master); | 478 | ret = spi_master_suspend(master); |
479 | if (ret) | ||
480 | return ret; | ||
478 | 481 | ||
479 | clk_disable(mcfqspi->clk); | 482 | clk_disable(mcfqspi->clk); |
480 | 483 | ||
@@ -486,11 +489,9 @@ static int mcfqspi_resume(struct device *dev) | |||
486 | struct spi_master *master = dev_get_drvdata(dev); | 489 | struct spi_master *master = dev_get_drvdata(dev); |
487 | struct mcfqspi *mcfqspi = spi_master_get_devdata(master); | 490 | struct mcfqspi *mcfqspi = spi_master_get_devdata(master); |
488 | 491 | ||
489 | spi_master_resume(master); | ||
490 | |||
491 | clk_enable(mcfqspi->clk); | 492 | clk_enable(mcfqspi->clk); |
492 | 493 | ||
493 | return 0; | 494 | return spi_master_resume(master); |
494 | } | 495 | } |
495 | #endif | 496 | #endif |
496 | 497 | ||