ppc/pnv: Implement big-core PVR for Power9/10
Power9/10 CPUs have PVR[51] set in small-core mode and clear in big-core mode. This is used by skiboot firmware. PVR is not hypervisor-privileged but it is not so important that spapr to implement this because it's generally masked out of PVR matching code in kernels, and only used by firmware. Reviewed-by: Cédric Le Goater <clg@redhat.com> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
This commit is contained in:
parent
cf0eb929e5
commit
27f61d1b0b
@ -58,6 +58,10 @@ static void pnv_core_cpu_reset(PnvCore *pc, PowerPCCPU *cpu)
|
||||
env->nip = 0x10;
|
||||
env->msr |= MSR_HVB; /* Hypervisor mode */
|
||||
env->spr[SPR_HRMOR] = pc->hrmor;
|
||||
if (pc->big_core) {
|
||||
/* Clear "small core" bit on Power9/10 (this is set in default PVR) */
|
||||
env->spr[SPR_PVR] &= ~PPC_BIT(51);
|
||||
}
|
||||
hreg_compute_hflags(env);
|
||||
ppc_maybe_interrupt(env);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user