diff mbox

[RFT,2/2] spi: sirf: Add missing spi_master_{resume,suspend} calls to PM callbacks

Message ID 1394003949.18343.4.camel@phoenix (mailing list archive)
State Accepted
Commit a82ba3a318dd5eaf1f3dcbc335f81770d557a4fc
Headers show

Commit Message

Axel Lin March 5, 2014, 7:19 a.m. UTC
This is required since commit 2025172e3280 "spi/bitbang: Use core message pump".
spi-bitbang now uses core message pump, so it needs to call spi_master_suspend/
spi_master_resume to stop/start the queue while suspend/resume.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
---
 drivers/spi/spi-sirf.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

Comments

Mark Brown March 13, 2014, 9:57 a.m. UTC | #1
On Wed, Mar 05, 2014 at 03:19:09PM +0800, Axel Lin wrote:
> This is required since commit 2025172e3280 "spi/bitbang: Use core message pump".
> spi-bitbang now uses core message pump, so it needs to call spi_master_suspend/
> spi_master_resume to stop/start the queue while suspend/resume.

Applied, thanks.
diff mbox

Patch

diff --git a/drivers/spi/spi-sirf.c b/drivers/spi/spi-sirf.c
index a72b8f8..1a77ad5 100644
--- a/drivers/spi/spi-sirf.c
+++ b/drivers/spi/spi-sirf.c
@@ -748,6 +748,11 @@  static int spi_sirfsoc_suspend(struct device *dev)
 {
 	struct spi_master *master = dev_get_drvdata(dev);
 	struct sirfsoc_spi *sspi = spi_master_get_devdata(master);
+	int ret;
+
+	ret = spi_master_suspend(master);
+	if (ret)
+		return ret;
 
 	clk_disable(sspi->clk);
 	return 0;
@@ -764,7 +769,7 @@  static int spi_sirfsoc_resume(struct device *dev)
 	writel(SIRFSOC_SPI_FIFO_START, sspi->base + SIRFSOC_SPI_RXFIFO_OP);
 	writel(SIRFSOC_SPI_FIFO_START, sspi->base + SIRFSOC_SPI_TXFIFO_OP);
 
-	return 0;
+	return spi_master_resume(master);
 }
 #endif