Skip to content

Commit

Permalink
spapr: set MSR[ME] and MSR[FP] on client entry
Browse files Browse the repository at this point in the history
The initial MSR state for the OpenFirmware binding specifies
MSR[ME] and MSR[FP] are set.

Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
  • Loading branch information
npiggin committed Mar 12, 2024
1 parent 678b6f1 commit 5e97fd4
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion hw/ppc/spapr_cpu_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,13 @@ static void spapr_reset_vcpu(PowerPCCPU *cpu)

/*
* "PowerPC Processor binding to IEEE 1275" defines the initial MSR state
* as 32bit (MSR_SF=0) in "8.2.1. Initial Register Values".
* as 32bit (MSR_SF=0) with MSR_ME=1 and MSR_FP=1 in "8.2.1. Initial
* Register Values". This can also be found in "LoPAPR 1.1" "C.9.2.1
* Initial Register Values".
*/
env->msr &= ~(1ULL << MSR_SF);
env->msr |= (1ULL << MSR_ME) | (1ULL << MSR_FP);

env->spr[SPR_HIOR] = 0;

lpcr = env->spr[SPR_LPCR];
Expand Down

0 comments on commit 5e97fd4

Please sign in to comment.