Commit 0aedca71 authored by Leo Yan's avatar Leo Yan
Browse files

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: default avatarTao Wang <kevin.wangtao@hisilicon.com>
Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
parent 0dc3c353
......@@ -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()));
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment