diff options
author | Leo Yan <leo.yan@linaro.org> | 2017-06-15 13:51:22 +0800 |
---|---|---|
committer | Leo Yan <leo.yan@linaro.org> | 2017-06-19 08:00:46 +0800 |
commit | 0aedca7173ce04e087c0e882316fe2e26b9966ee (patch) | |
tree | 8dff045b9a2a5d04fb741e414ec79b2038b4733b /plat/hisilicon | |
parent | 0dc3c353054896722b7cbfbd04a4d845619485e7 (diff) |
plat: Hikey960: fix the CPU hotplug
In CPU off callback function, the old code uses the function
hisi_test_pwrdn_allcores() to check if all CPUs in cluster have been
powered off and if it's valid then power off the whole cluster. But the
function hisi_test_pwrdn_allcores() only maintains the different power
states only for CPU suspend/resume flow, so it cannot return correct
states for CPU on/off flow.
This patch is to change use hisi_test_cpu_down() to check if all CPUs
have been powered off, so that can power off the whole cluster properly
when all CPUs in cluster have been hotplugged off.
Signed-off-by: Tao Wang <kevin.wangtao@hisilicon.com>
Signed-off-by: Leo Yan <leo.yan@linaro.org>
Diffstat (limited to 'plat/hisilicon')
-rw-r--r-- | plat/hisilicon/hikey960/hikey960_pm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/plat/hisilicon/hikey960/hikey960_pm.c b/plat/hisilicon/hikey960/hikey960_pm.c index 257299e8..3447c9f1 100644 --- a/plat/hisilicon/hikey960/hikey960_pm.c +++ b/plat/hisilicon/hikey960/hikey960_pm.c @@ -102,7 +102,7 @@ void hikey960_pwr_domain_off(const psci_power_state_t *target_state) hisi_powerdn_core(cluster, core); /* check if any core is powered up */ - if (hisi_test_pwrdn_allcores(cluster, core)) { + if (hisi_test_cpu_down(cluster, core)) { cci_disable_snoop_dvm_reqs(MPIDR_AFFLVL1_VAL(read_mpidr_el1())); |