qemu-e2k/include
Alexander Graf a3495d11c4 hw/arm/virt: Consolidate GIC finalize logic
Up to now, the finalize_gic_version() code open coded what is essentially
a support bitmap match between host/emulation environment and desired
target GIC type.

This open coding leads to undesirable side effects. For example, a VM with
KVM and -smp 10 will automatically choose GICv3 while the same command
line with TCG will stay on GICv2 and fail the launch.

This patch combines the TCG and KVM matching code paths by making
everything a 2 pass process. First, we determine which GIC versions the
current environment is able to support, then we go through a single
state machine to determine which target GIC mode that means for us.

After this patch, the only user noticable changes should be consolidated
error messages as well as TCG -M virt supporting -smp > 8 automatically.

Signed-off-by: Alexander Graf <agraf@csgraf.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Zenghui Yu <yuzenghui@huawei.com>
Message-id: 20221223090107.98888-2-agraf@csgraf.de
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2023-02-03 12:59:22 +00:00
..
authz
block include/block: Untangle inclusion loops 2023-01-20 07:24:28 +01:00
chardev chardev: src buffer const for write functions 2022-09-29 14:38:05 +04:00
crypto crypto: Support export akcipher to pkcs8 2022-11-02 06:56:32 -04:00
disas
exec common-user: Re-enable ppc32 host 2023-02-03 09:30:45 +00:00
fpu
hw hw/arm/virt: Consolidate GIC finalize logic 2023-02-03 12:59:22 +00:00
io coroutine: Split qemu/coroutine-core.h off qemu/coroutine.h 2023-01-20 07:21:46 +01:00
libdecnumber
migration
monitor Header cleanup patches for 2023-01-20 2023-01-20 13:17:55 +00:00
net virtio-net: add support for configure interrupt 2023-01-08 01:54:22 -05:00
qapi qerror: QERR_PERMISSION_DENIED is no longer used, drop 2022-10-27 07:57:18 +02:00
qemu Testing, docs, semihosting and plugin updates 2023-02-02 18:00:41 +00:00
qom
scsi coroutine: Clean up superfluous inclusion of qemu/coroutine.h 2023-01-19 10:18:28 +01:00
semihosting
standard-headers m68k: rework BI_VIRT_RNG_SEED as BI_RNG_SEED 2022-10-21 20:46:10 +02:00
sysemu include/block: Untangle inclusion loops 2023-01-20 07:24:28 +01:00
tcg common-user: Re-enable ppc32 host 2023-02-03 09:30:45 +00:00
ui ui: Split hmp_mouse_set() and move the HMP part to ui/ 2023-01-19 13:30:01 +01:00
user include: Include headers where needed 2023-01-08 01:54:22 -05:00
elf.h include/elf.h: add s390x note types 2022-10-26 12:54:59 +04:00
glib-compat.h
qemu-io.h
qemu-main.h