mmc: omap_hsmmc: add hibernation support
Setting a dev_pm_ops suspend/resume pair but not a set of hibernation functions means those pm functions will not be called upon hibernation. Fix this by using SET_SYSTEM_SLEEP_PM_OPS, which appropriately assigns the suspend and hibernation handlers and move omap_hsmmc_x callbacks under CONFIG_PM_SLEEP to avoid build warnings. Signed-off-by: Russ Dill <Russ.Dill@ti.com> [Grygorii.Strashko@linaro.org: rebased on top of K4.0] Signed-off-by: Grygorii Strashko <grygorii.strashko@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
cde592cbe5
commit
3d3bbfbdfd
|
@ -2231,7 +2231,7 @@ static int omap_hsmmc_remove(struct platform_device *pdev)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PM
|
||||
#ifdef CONFIG_PM_SLEEP
|
||||
static int omap_hsmmc_suspend(struct device *dev)
|
||||
{
|
||||
struct omap_hsmmc_host *host = dev_get_drvdata(dev);
|
||||
|
@ -2287,10 +2287,6 @@ static int omap_hsmmc_resume(struct device *dev)
|
|||
pm_runtime_put_autosuspend(host->dev);
|
||||
return 0;
|
||||
}
|
||||
|
||||
#else
|
||||
#define omap_hsmmc_suspend NULL
|
||||
#define omap_hsmmc_resume NULL
|
||||
#endif
|
||||
|
||||
static int omap_hsmmc_runtime_suspend(struct device *dev)
|
||||
|
@ -2371,8 +2367,7 @@ static int omap_hsmmc_runtime_resume(struct device *dev)
|
|||
}
|
||||
|
||||
static struct dev_pm_ops omap_hsmmc_dev_pm_ops = {
|
||||
.suspend = omap_hsmmc_suspend,
|
||||
.resume = omap_hsmmc_resume,
|
||||
SET_SYSTEM_SLEEP_PM_OPS(omap_hsmmc_suspend, omap_hsmmc_resume)
|
||||
.runtime_suspend = omap_hsmmc_runtime_suspend,
|
||||
.runtime_resume = omap_hsmmc_runtime_resume,
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue