diff options
| author | Marc Zyngier | 2022-01-14 15:07:37 +0100 |
|---|---|---|
| committer | Peter Maydell | 2022-01-20 12:47:52 +0100 |
| commit | a63618b147443de2485fb93705e21879b25c64c2 (patch) | |
| tree | 8d7e36cf76be11330c2fd0b4ca189fc1d574e9f8 /include | |
| parent | hw/arm/virt: Add a control for the the highmem PCIe MMIO (diff) | |
| download | qemu-a63618b147443de2485fb93705e21879b25c64c2.tar.gz qemu-a63618b147443de2485fb93705e21879b25c64c2.tar.xz qemu-a63618b147443de2485fb93705e21879b25c64c2.zip | |
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')
| -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 cf5d8b83de..c1ea17d0de 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 */ |
