summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDong Aisheng <aisheng.dong@nxp.com>2017-11-24 16:31:32 +0800
committerJason Liu <jason.hui.liu@nxp.com>2019-02-12 10:29:35 +0800
commit8d9cc7f744e97c9eeca1b9eae765e2c60d49c204 (patch)
tree58258e27f4de6ef2979136e613d4bf754d82f39e /include
parentcf14fe84256ad509a44923519414563318618d7b (diff)
MLK-17074-1 PM / Domains: support enter deepest state for multiple states domains
Currently the generic power domain suspend code pm_genpd_suspend_noirq will try to power off a domain used by devices in genpd_sync_poweroff if its status is not GPD_STATE_ACTIVE. However, for power domains supporting multiple low power states, it may already enter an intermediate low power state by runtime PM before system suspend and the status is already GPD_STATE_POWER_OFF which results in then the power domain stay at an intermediate low power state during system suspend. Let's give the power domain a chance to switch to the deepest state in case it's already off but in an intermediate low power state. Due to power domain is alway off, so no need to check device wakeup case anymore. Reviewed-by: Frank Li <frank.li@nxp.com> Reviewed-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com> Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/pm_domain.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index ff88488ef2cc..49e92073517c 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -90,6 +90,7 @@ struct generic_pm_domain {
};
};
+ unsigned int state_idx_saved; /* saved power state for recovery after system suspend/resume */
};
static inline struct generic_pm_domain *pd_to_genpd(struct dev_pm_domain *pd)