summaryrefslogtreecommitdiff
path: root/drivers/spi
diff options
context:
space:
mode:
authorVirupax Sadashivpetimath <virupax.sadashivpetimath@stericsson.com>2010-12-22 14:52:44 +0530
committerRobert Marklund <robert.marklund@stericsson.com>2011-10-05 12:53:37 +0200
commit2c9ae3ceb3b22f9680c923454e93f9d9fe92445c (patch)
tree8bfb40aba1dd88e53ef9875611a2ed85f9a9ed32 /drivers/spi
parent705c66e9e418bf89d4b8762edeca32d07a41ee38 (diff)
amba-pl022: Clear SSE once the transfer is completed
Clear SSE after the xfer completion and remove the not needed default register restoration in suspend. ST-Ericsson ID: ER 316546 Change-Id: I73368e18bd55abdff6b1909239bcf5b64583b452 Signed-off-by: Virupax Sadashivpetimath <virupax.sadashivpetimath@stericsson.com>
Diffstat (limited to 'drivers/spi')
-rw-r--r--drivers/spi/amba-pl022.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/spi/amba-pl022.c b/drivers/spi/amba-pl022.c
index 0288654571a..af36e201d66 100644
--- a/drivers/spi/amba-pl022.c
+++ b/drivers/spi/amba-pl022.c
@@ -516,7 +516,12 @@ static void giveback(struct pl022 *pl022)
msg->state = NULL;
if (msg->complete)
msg->complete(msg->context);
- /* This message is completed, so let's turn off the clocks & power */
+
+ /* disable the SPI/SSP operation */
+ writew((readw(SSP_CR1(pl022->virtbase)) &
+ (~SSP_CR1_MASK_SSE)), SSP_CR1(pl022->virtbase));
+
+ /* This message is completed, so let's turn off the clock! */
clk_disable(pl022->clk);
amba_pclk_disable(pl022->adev);
amba_vcore_disable(pl022->adev);
@@ -2228,11 +2233,6 @@ static int pl022_suspend(struct amba_device *adev, pm_message_t state)
return status;
}
- amba_vcore_enable(adev);
- amba_pclk_enable(adev);
- load_ssp_default_config(pl022);
- amba_pclk_disable(adev);
- amba_vcore_disable(adev);
dev_dbg(&adev->dev, "suspended\n");
return 0;
}