aboutsummaryrefslogtreecommitdiff
path: root/hw/ppc/spapr_vof.c
diff options
context:
space:
mode:
authorAlexey Kardashevskiy <aik@ozlabs.ru>2022-01-28 13:15:01 +0100
committerCédric Le Goater <clg@kaod.org>2022-01-28 13:15:01 +0100
commit6e3f09c28a2e1767dddaf08b2f1414cd57c6c909 (patch)
tree547c2caad67ba169d95b0712db845df9c170adb2 /hw/ppc/spapr_vof.c
parentcfe63e46be0a1f8a7fd2fd5547222f8344a43279 (diff)
downloadqemu-6e3f09c28a2e1767dddaf08b2f1414cd57c6c909.zip
qemu-6e3f09c28a2e1767dddaf08b2f1414cd57c6c909.tar.gz
qemu-6e3f09c28a2e1767dddaf08b2f1414cd57c6c909.tar.bz2
spapr: Force 32bit when resetting a core
"PowerPC Processor binding to IEEE 1275" says in "8.2.1. Initial Register Values" that the initial state is defined as 32bit so do it for both SLOF and VOF. This should not cause behavioral change as SLOF switches to 64bit very early anyway. As nothing enforces LE anywhere, this drops it for VOF. The goal is to make VOF work with TCG as otherwise it barfs with qemu: fatal: TCG hflags mismatch (current:0x6c000004 rebuilt:0x6c000000) Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Reviewed-by: Cédric Le Goater <clg@kaod.org> Message-Id: <20220107072423.2278113-1-aik@ozlabs.ru> Signed-off-by: Cédric Le Goater <clg@kaod.org>
Diffstat (limited to 'hw/ppc/spapr_vof.c')
-rw-r--r--hw/ppc/spapr_vof.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/hw/ppc/spapr_vof.c b/hw/ppc/spapr_vof.c
index 40ce8fe..a33f940 100644
--- a/hw/ppc/spapr_vof.c
+++ b/hw/ppc/spapr_vof.c
@@ -88,8 +88,6 @@ void spapr_vof_reset(SpaprMachineState *spapr, void *fdt, Error **errp)
spapr_cpu_set_entry_state(first_ppc_cpu, SPAPR_ENTRY_POINT,
stack_ptr, spapr->initrd_base,
spapr->initrd_size);
- /* VOF is 32bit BE so enforce MSR here */
- first_ppc_cpu->env.msr &= ~((1ULL << MSR_SF) | (1ULL << MSR_LE));
/*
* At this point the expected allocation map is: