hw/arm/virt: Support TCG GICv4
authorPeter Maydell <peter.maydell@linaro.org>
Fri, 8 Apr 2022 14:15:50 +0000 (15:15 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Fri, 22 Apr 2022 13:44:53 +0000 (14:44 +0100)
commit7cf3f8d243f22df8f4483465816fb3364b7b63b8
treef77cf28df67a1d3ce88c503c8c204de34f5b1f2b
parentf31985a77a4a0052219a08bc08b9092daa74eb1e
hw/arm/virt: Support TCG GICv4

Add support for the TCG GICv4 to the virt board. For the board,
the GICv4 is very similar to the GICv3, with the only difference
being the size of the redistributor frame. The changes here are thus:
 * calculating virt_redist_capacity correctly for GICv4
 * changing various places which were "if GICv3" to be "if not GICv2"
 * the commandline option handling

Note that using GICv4 reduces the maximum possible number of CPUs on
the virt board from 512 to 317, because we can now only fit half as
many redistributors into the redistributor regions we have defined.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20220408141550.1271295-42-peter.maydell@linaro.org
docs/system/arm/virt.rst
hw/arm/virt.c
include/hw/arm/virt.h