diff options
author | Marc Zyngier <maz@kernel.org> | 2022-01-14 14:07:37 +0000 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2022-01-20 11:47:52 +0000 |
commit | a63618b147443de2485fb93705e21879b25c64c2 (patch) | |
tree | 8d7e36cf76be11330c2fd0b4ca189fc1d574e9f8 /include/hw | |
parent | c8f008c40fb9dc35bc0fdcd52d747c920d614725 (diff) | |
download | qemu-a63618b147443de2485fb93705e21879b25c64c2.zip qemu-a63618b147443de2485fb93705e21879b25c64c2.tar.gz qemu-a63618b147443de2485fb93705e21879b25c64c2.tar.bz2 |
hw/arm/virt: Add a control for the the highmem redistributors
Just like we can control the enablement of the highmem PCIe region
using highmem_ecam, let's add a control for the highmem GICv3
redistributor region.
Similarily to highmem_ecam, these redistributors are disabled when
highmem is off.
Reviewed-by: Andrew Jones <drjones@redhat.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Message-id: 20220114140741.1358263-3-maz@kernel.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/hw')
-rw-r--r-- | include/hw/arm/virt.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/include/hw/arm/virt.h b/include/hw/arm/virt.h index cf5d8b8..c1ea17d 100644 --- a/include/hw/arm/virt.h +++ b/include/hw/arm/virt.h @@ -144,6 +144,7 @@ struct VirtMachineState { bool highmem; bool highmem_ecam; bool highmem_mmio; + bool highmem_redists; bool its; bool tcg_its; bool virt; @@ -191,7 +192,8 @@ static inline int virt_gicv3_redist_region_count(VirtMachineState *vms) assert(vms->gic_version == VIRT_GIC_VERSION_3); - return MACHINE(vms)->smp.cpus > redist0_capacity ? 2 : 1; + return (MACHINE(vms)->smp.cpus > redist0_capacity && + vms->highmem_redists) ? 2 : 1; } #endif /* QEMU_ARM_VIRT_H */ |