diff options
author | Alexey Kardashevskiy <aik@ozlabs.ru> | 2019-02-07 11:41:28 +1100 |
---|---|---|
committer | Stewart Smith <stewart@linux.ibm.com> | 2019-02-10 21:42:06 -0600 |
commit | 17975a6e645768c4651199055052a13858db6506 (patch) | |
tree | fe941616e2aede9848b481ee3f6dfd76683d4010 | |
parent | 67fc150c82a7b6f1d06eff5ae71ea40a863aaf71 (diff) | |
download | skiboot-17975a6e645768c4651199055052a13858db6506.zip skiboot-17975a6e645768c4651199055052a13858db6506.tar.gz skiboot-17975a6e645768c4651199055052a13858db6506.tar.bz2 |
cpufeatures: Always advertise POWER8NVL as DD2
Despite the major version of PVR being 1 (0x004c0100) for POWER8NVL,
these chips are functionally equalent to P8/P8E DD2 levels.
This advertises POWER8NVL as DD2. As the result, skiboot adds
ibm,powerpc-cpu-features/processor-control-facility for such CPUs and
the linux kernel can use hypervisor doorbell messages to wake secondary
threads; otherwise "KVM: CPU %d seems to be stuck" would appear because
of missing LPCR_PECEDH.
Fixes: 7f4c8e8ce0b "dt: add /cpus/ibm, powerpc-cpu-features device tree bindings"
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
-rw-r--r-- | core/cpufeatures.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/core/cpufeatures.c b/core/cpufeatures.c index 1daa017..9f56c9b 100644 --- a/core/cpufeatures.c +++ b/core/cpufeatures.c @@ -885,16 +885,17 @@ void dt_add_cpufeatures(struct dt_node *root) if (!cpu_name) cpu_name = "POWER8E"; /* fallthrough */ - case PVR_TYPE_P8NVL: - if (!cpu_name) - cpu_name = "POWER8NVL"; - cpu_feature_isa = ISA_V2_07B; if (PVR_VERS_MAJ(version) == 1) cpu_feature_cpu = CPU_P8_DD1; else cpu_feature_cpu = CPU_P8_DD2; break; + case PVR_TYPE_P8NVL: + cpu_name = "POWER8NVL"; + cpu_feature_isa = ISA_V2_07B; + cpu_feature_cpu = CPU_P8_DD2; + break; case PVR_TYPE_P9: if (!cpu_name) cpu_name = "POWER9"; |