6a48c64eec
The 3 high memory regions are usually enabled by default, but they may be not used. For example, VIRT_HIGH_GIC_REDIST2 isn't needed by GICv2. This leads to waste in the PA space. Add properties ("highmem-redists", "highmem-ecam", "highmem-mmio") to allow users selectively disable them if needed. After that, the high memory region for GICv3 or GICv4 redistributor can be disabled by user, the number of maximal supported CPUs needs to be calculated based on 'vms->highmem_redists'. The follow-up error message is also improved to indicate if the high memory region for GICv3 and GICv4 has been enabled or not. Suggested-by: Marc Zyngier <maz@kernel.org> Signed-off-by: Gavin Shan <gshan@redhat.com> Reviewed-by: Marc Zyngier <maz@kernel.org> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> Message-id: 20221029224307.138822-8-gshan@redhat.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org> |
||
---|---|---|
.. | ||
allwinner-a10.c | ||
allwinner-h3.c | ||
armsse.c | ||
armv7m.c | ||
aspeed_ast10x0.c | ||
aspeed_ast2600.c | ||
aspeed_soc.c | ||
aspeed.c | ||
bcm2835_peripherals.c | ||
bcm2836.c | ||
boot.c | ||
collie.c | ||
cubieboard.c | ||
digic_boards.c | ||
digic.c | ||
exynos4_boards.c | ||
exynos4210.c | ||
fby35.c | ||
fsl-imx6.c | ||
fsl-imx6ul.c | ||
fsl-imx7.c | ||
fsl-imx25.c | ||
fsl-imx31.c | ||
gumstix.c | ||
highbank.c | ||
imx25_pdk.c | ||
integratorcp.c | ||
Kconfig | ||
kzm.c | ||
mainstone.c | ||
mcimx6ul-evk.c | ||
mcimx7d-sabre.c | ||
meson.build | ||
microbit.c | ||
mps2-tz.c | ||
mps2.c | ||
msf2-soc.c | ||
msf2-som.c | ||
musca.c | ||
musicpal.c | ||
netduino2.c | ||
netduinoplus2.c | ||
npcm7xx_boards.c | ||
npcm7xx.c | ||
nrf51_soc.c | ||
nseries.c | ||
omap1.c | ||
omap2.c | ||
omap_sx1.c | ||
orangepi.c | ||
palm.c | ||
pxa2xx_gpio.c | ||
pxa2xx_pic.c | ||
pxa2xx.c | ||
raspi.c | ||
realview.c | ||
sabrelite.c | ||
sbsa-ref.c | ||
smmu-common.c | ||
smmu-internal.h | ||
smmuv3-internal.h | ||
smmuv3.c | ||
spitz.c | ||
stellaris.c | ||
stm32f100_soc.c | ||
stm32f205_soc.c | ||
stm32f405_soc.c | ||
stm32vldiscovery.c | ||
strongarm.c | ||
strongarm.h | ||
tosa.c | ||
trace-events | ||
trace.h | ||
versatilepb.c | ||
vexpress.c | ||
virt-acpi-build.c | ||
virt.c | ||
xilinx_zynq.c | ||
xlnx-versal-virt.c | ||
xlnx-versal.c | ||
xlnx-zcu102.c | ||
xlnx-zynqmp.c | ||
z2.c |