This is v6 of an effort to implement Open Firmware Client Interface in QEMU. The feature is described in 6/6, 1/6..5/6 are small but necessary preparations.
With this thing, I can boot unmodified Ubuntu 18.04 and Fedora 30 directly from the disk without SLOF. This is based on sha1 532fe321cf06 Richard Henderson "target/ppc: Use probe_write for DCBZ". Please comment. Thanks. Alexey Kardashevskiy (6): ppc: Start CPU in the default mode which is big-endian 32bit ppc/spapr: Move GPRs setup to one place spapr/spapr: Make vty_getchars public spapr/cas: Separate CAS handling from rebuilding the FDT spapr: Allow changing offset for -kernel image spapr: Implement Open Firmware client interface hw/ppc/Makefile.objs | 1 + include/hw/ppc/spapr.h | 29 +- include/hw/ppc/spapr_cpu_core.h | 4 +- include/hw/ppc/spapr_vio.h | 1 + hw/char/spapr_vty.c | 2 +- hw/ppc/spapr.c | 139 ++- hw/ppc/spapr_cpu_core.c | 7 +- hw/ppc/spapr_hcall.c | 73 +- hw/ppc/spapr_of_client.c | 1526 +++++++++++++++++++++++++++++++ hw/ppc/spapr_rtas.c | 2 +- target/ppc/translate_init.inc.c | 6 - hw/ppc/trace-events | 24 + 12 files changed, 1744 insertions(+), 70 deletions(-) create mode 100644 hw/ppc/spapr_of_client.c -- 2.17.1