hw/arm/virt: Make accels in GIC finalize logic explicit
Let's explicitly list out all accelerators that we support when trying to determine the supported set of GIC versions. KVM was already separate, so the only missing one is HVF which simply reuses all of TCG's emulation code and thus has the same compatibility matrix. Signed-off-by: Alexander Graf <agraf@csgraf.de> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Zenghui Yu <yuzenghui@huawei.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20221223090107.98888-3-agraf@csgraf.de [PMM: Added qtest to the list of accelerators] Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
a3495d11c4
commit
5e91b9e03f
|
@ -47,8 +47,10 @@
|
|||
#include "sysemu/numa.h"
|
||||
#include "sysemu/runstate.h"
|
||||
#include "sysemu/tpm.h"
|
||||
#include "sysemu/tcg.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hvf.h"
|
||||
#include "sysemu/qtest.h"
|
||||
#include "hw/loader.h"
|
||||
#include "qapi/error.h"
|
||||
#include "qemu/bitops.h"
|
||||
|
@ -1929,7 +1931,7 @@ static void finalize_gic_version(VirtMachineState *vms)
|
|||
/* KVM w/o kernel irqchip can only deal with GICv2 */
|
||||
gics_supported |= VIRT_GIC_VERSION_2_MASK;
|
||||
accel_name = "KVM with kernel-irqchip=off";
|
||||
} else {
|
||||
} else if (tcg_enabled() || hvf_enabled() || qtest_enabled()) {
|
||||
gics_supported |= VIRT_GIC_VERSION_2_MASK;
|
||||
if (module_object_class_by_name("arm-gicv3")) {
|
||||
gics_supported |= VIRT_GIC_VERSION_3_MASK;
|
||||
|
@ -1938,6 +1940,9 @@ static void finalize_gic_version(VirtMachineState *vms)
|
|||
gics_supported |= VIRT_GIC_VERSION_4_MASK;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
error_report("Unsupported accelerator, can not determine GIC support");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue