diff options
author | 2019-10-10 12:01:48 +0200 | |
---|---|---|
committer | 2020-01-02 16:52:18 +0100 | |
commit | 9c6ceecb6541954dfc410aa8883f872469326c73 (patch) | |
tree | 1599807edf38ae8b942b60e50efe1d19d16bb02f /include | |
parent | cpuidle: psci: Manage runtime PM in the idle path (diff) | |
download | linux-9c6ceecb6541954dfc410aa8883f872469326c73.tar.gz linux-9c6ceecb6541954dfc410aa8883f872469326c73.tar.bz2 linux-9c6ceecb6541954dfc410aa8883f872469326c73.zip |
cpuidle: psci: Support CPU hotplug for the hierarchical model
When the hierarchical CPU topology is used and when a CPU is put offline,
that CPU prevents its PM domain from being powered off, which is because
genpd observes the corresponding attached device as being active from a
runtime PM point of view. Furthermore, any potential master PM domains are
also prevented from being powered off.
To address this limitation, let's add add a new CPU hotplug state
(CPUHP_AP_CPU_PM_STARTING) and register up/down callbacks for it, which
allows us to deal with runtime PM accordingly.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
Acked-by: Rafael J. Wysocki <rafael@kernel.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/cpuhotplug.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h index e51ee772b9f5..01f04ed6ad92 100644 --- a/include/linux/cpuhotplug.h +++ b/include/linux/cpuhotplug.h @@ -95,6 +95,7 @@ enum cpuhp_state { CPUHP_AP_OFFLINE, CPUHP_AP_SCHED_STARTING, CPUHP_AP_RCUTREE_DYING, + CPUHP_AP_CPU_PM_STARTING, CPUHP_AP_IRQ_GIC_STARTING, CPUHP_AP_IRQ_HIP04_STARTING, CPUHP_AP_IRQ_ARMADA_XP_STARTING, |