diff options
author | Virupax Sadashivpetimath <virupax.sadashivpetimath@stericsson.com> | 2010-12-22 14:52:44 +0530 |
---|---|---|
committer | Robert Marklund <robert.marklund@stericsson.com> | 2011-10-05 12:53:37 +0200 |
commit | 2c9ae3ceb3b22f9680c923454e93f9d9fe92445c (patch) | |
tree | 8bfb40aba1dd88e53ef9875611a2ed85f9a9ed32 /drivers/spi | |
parent | 705c66e9e418bf89d4b8762edeca32d07a41ee38 (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.c | 12 |
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; } |