diff options
author | David Gibson | 2017-07-28 05:38:50 +0200 |
---|---|---|
committer | David Gibson | 2017-07-29 08:22:14 +0200 |
commit | fc7e0765fc385eed08c19a8823a970f4e98379b0 (patch) | |
tree | 5d1fec68473f73a0f9e74be0b757bd095692d6c9 | |
parent | spapr_drc: fix realize and unrealize (diff) | |
download | qemu-fc7e0765fc385eed08c19a8823a970f4e98379b0.tar.gz qemu-fc7e0765fc385eed08c19a8823a970f4e98379b0.tar.xz qemu-fc7e0765fc385eed08c19a8823a970f4e98379b0.zip |
Revert "spapr: populate device tree depending on XIVE_EXPLOIT option"
This reverts commit b87680427e8a3ff682f66514e99a8344e7437247.
I thought this was a harmless preliminary for XIVE enablement patches
we expect later on. However, due to some subtle interactions between
qemu and SLOF (guest firmware) this breaks some things. Revert it for
now, we'll work out how to fix it when the rest of the XIVE patches
are ready.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-rw-r--r-- | hw/ppc/spapr.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index 2a3e53d5d5..f7a19720dc 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -776,11 +776,6 @@ static int spapr_dt_cas_updates(sPAPRMachineState *spapr, void *fdt, } } - /* /interrupt controller */ - if (!spapr_ovec_test(ov5_updates, OV5_XIVE_EXPLOIT)) { - spapr_dt_xics(xics_max_server_number(), fdt, PHANDLE_XICP); - } - offset = fdt_path_offset(fdt, "/chosen"); if (offset < 0) { offset = fdt_add_subnode(fdt, 0, "chosen"); @@ -804,7 +799,7 @@ int spapr_h_cas_compose_response(sPAPRMachineState *spapr, size -= sizeof(hdr); - /* Create skeleton */ + /* Create sceleton */ fdt_skel = g_malloc0(size); _FDT((fdt_create(fdt_skel, size))); _FDT((fdt_begin_node(fdt_skel, ""))); @@ -1077,6 +1072,9 @@ static void *spapr_build_fdt(sPAPRMachineState *spapr, _FDT(fdt_setprop_cell(fdt, 0, "#address-cells", 2)); _FDT(fdt_setprop_cell(fdt, 0, "#size-cells", 2)); + /* /interrupt controller */ + spapr_dt_xics(xics_max_server_number(), fdt, PHANDLE_XICP); + ret = spapr_populate_memory(spapr, fdt); if (ret < 0) { error_report("couldn't setup memory nodes in fdt"); |