ppc/spapr: Move GPRs setup to one place
commit395a20d3cc61fa99cf4ad58921050f8a44b369f9
authorAlexey Kardashevskiy <aik@ozlabs.ru>
Tue, 10 Mar 2020 05:07:31 +0000 (10 16:07 +1100)
committerDavid Gibson <david@gibson.dropbear.id.au>
Tue, 17 Mar 2020 04:08:50 +0000 (17 15:08 +1100)
tree3c95b6acd9c2509d818febd4057b006d4be79bda
parent94f040aaecf4e41cc68991b80204b1b6886bbdd0
ppc/spapr: Move GPRs setup to one place

At the moment "pseries" starts in SLOF which only expects the FDT blob
pointer in r3. As we are going to introduce a OpenFirmware support in
QEMU, we will be booting OF clients directly and these expect a stack
pointer in r1, Linux looks at r3/r4 for the initramdisk location
(although vmlinux can find this from the device tree but zImage from
distro kernels cannot).

This extends spapr_cpu_set_entry_state() to take more registers. This
should cause no behavioral change.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Message-Id: <20200310050733.29805-2-aik@ozlabs.ru>
Reviewed-by: Greg Kurz <groug@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/ppc/spapr.c
hw/ppc/spapr_cpu_core.c
hw/ppc/spapr_rtas.c
include/hw/ppc/spapr_cpu_core.h