diff options
author | Alison Wang <b18965@freescale.com> | 2012-12-11 15:38:00 +0800 |
---|---|---|
committer | Ed Nash <enash@enash-desktop.(none)> | 2012-12-12 14:46:31 -0500 |
commit | 3e67deec905904e2786129bfbffea1e20b18a8fe (patch) | |
tree | 3e5e2980f660028982565d46725c934e7dcbf27d | |
parent | 97bb163197f3dc3405af90b5159e0f6b8a302586 (diff) |
ENGR00216076-3: DSPI: Update DSPI driver for PM
Update power management part for DSPI driver.
Signed-off-by: Alison Wang <b18965@freescale.com>
-rw-r--r-- | drivers/spi/spi_mvf_dspi.c | 32 |
1 files changed, 2 insertions, 30 deletions
diff --git a/drivers/spi/spi_mvf_dspi.c b/drivers/spi/spi_mvf_dspi.c index 21dc672975be..a394659a3b02 100644 --- a/drivers/spi/spi_mvf_dspi.c +++ b/drivers/spi/spi_mvf_dspi.c @@ -1033,34 +1033,12 @@ static void spi_mvf_shutdown(struct platform_device *pdev) #ifdef CONFIG_PM -static int suspend_devices(struct device *dev, void *pm_message) -{ - pm_message_t *state = pm_message; - - if (dev->power.power_state.event != state->event) { - dev_warn(dev, "pm state does not match request\n"); - return -1; - } - - return 0; -} - static int spi_mvf_suspend(struct platform_device *pdev, pm_message_t state) { struct spi_mvf_data *spi_mvf = platform_get_drvdata(pdev); - int ret = 0; - - /* Check all childern for current power state */ - if (device_for_each_child(&pdev->dev, - &state, suspend_devices) != 0) { - dev_warn(&pdev->dev, "suspend aborted\n"); - return -1; - } - ret = stop_queue(spi_mvf); - if (ret != 0) - return ret; + clk_disable(spi_mvf->clk); return 0; } @@ -1068,14 +1046,8 @@ static int spi_mvf_suspend(struct platform_device *pdev, static int spi_mvf_resume(struct platform_device *pdev) { struct spi_mvf_data *spi_mvf = platform_get_drvdata(pdev); - int ret = 0; - /* Start the queue running */ - ret = start_queue(spi_mvf); - if (ret != 0) { - dev_err(&pdev->dev, "problem starting queue (%d)\n", ret); - return ret; - } + clk_enable(spi_mvf->clk); return 0; } |