diff options
author | Robin Gong <b38343@freescale.com> | 2015-02-10 09:43:25 +0800 |
---|---|---|
committer | Nitin Garg <nitin.garg@nxp.com> | 2016-01-14 11:01:39 -0600 |
commit | 27113e8db47eeb11d1f3cd7bdf2157dd577b3fd4 (patch) | |
tree | a1afd5e148794c8c8f0e56eff560b3951c447dc2 /drivers/base | |
parent | 5ace0696b1f78545ad24c18a945423dd9cc5dc44 (diff) |
MLK-10238-4: power: domain: add suspend_noirq/resume_noirq in power domain
Since some driver which use power domain may use suspend_noirq/resume_noirq
we need implement it in power domain framework.
Signed-off-by: Robin Gong <b38343@freescale.com>
(cherry picked from commit f797469507178ddf7f41de913c79f3b709c72872)
Diffstat (limited to 'drivers/base')
-rw-r--r-- | drivers/base/power/domain.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c index 2327613d4539..1c99b09edcf6 100644 --- a/drivers/base/power/domain.c +++ b/drivers/base/power/domain.c @@ -1048,6 +1048,8 @@ static int pm_genpd_suspend_noirq(struct device *dev) || (dev->power.wakeup_path && genpd_dev_active_wakeup(genpd, dev))) return 0; + pm_generic_suspend_noirq(dev); + genpd_stop_dev(genpd, dev); /* @@ -1070,6 +1072,7 @@ static int pm_genpd_suspend_noirq(struct device *dev) static int pm_genpd_resume_noirq(struct device *dev) { struct generic_pm_domain *genpd; + int ret; dev_dbg(dev, "%s()\n", __func__); @@ -1089,7 +1092,11 @@ static int pm_genpd_resume_noirq(struct device *dev) pm_genpd_sync_poweron(genpd); genpd->suspended_count--; - return genpd_start_dev(genpd, dev); + ret = genpd_start_dev(genpd, dev); + + pm_generic_resume_noirq(dev); + + return ret; } /** |