qemu-e2k/include/hw/arm
Eric Auger 350a9c9e18 hw/arm/virt: Split the memory map description
In the prospect to introduce an extended memory map supporting more
RAM, let's split the memory map array into two parts:

- the former a15memmap, renamed base_memmap, contains regions below
  and including the RAM. MemMapEntries initialized in this array
  have a static size and base address.
- extended_memmap, only initialized with entries located after the
  RAM. MemMapEntries initialized in this array only get their size
  initialized. Their base address is dynamically computed depending
  on the the top of the RAM, with same alignment as their size.

Eventually base_memmap entries are copied into the extended_memmap
array. Using two separate arrays however clarifies which entries
are statically allocated and those which are dynamically allocated.

This new split will allow to grow the RAM size without changing the
description of the high IO entries.

We introduce a new virt_set_memmap() helper function which
"freezes" the memory map. We call it in machvirt_init as
memory attributes of the machine are not yet set when
virt_instance_init() gets called.

The memory map is unchanged (the top of the initial RAM still is
256GiB). Then come the high IO regions with same layout as before.

Signed-off-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-id: 20190304101339.25970-4-eric.auger@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2019-03-05 15:55:09 +00:00
..
allwinner-a10.h hw/arm/allwinner-a10: Add the 'A' SRAM and the SRAM controller 2019-01-07 15:23:47 +00:00
arm.h
armsse.h hw/arm/armsse: Wire up the MHUs 2019-02-28 11:03:04 +00:00
armv7m.h armv7m: Pass through start-powered-off CPU property 2019-02-01 14:55:41 +00:00
aspeed_soc.h
aspeed.h hw/arm/aspeed: Add an Aspeed machine class 2018-09-25 15:13:24 +01:00
bcm2835_peripherals.h
bcm2836.h
digic.h
exynos4210.h
fdt.h
fsl-imx6.h
fsl-imx6ul.h
fsl-imx7.h
fsl-imx25.h
fsl-imx31.h
linux-boot-if.h qom: make interface types abstract 2018-12-11 15:45:22 -02:00
msf2-soc.h
nrf51_soc.h arm: Instantiate NRF51 special NVM's and NVMC 2019-02-01 15:32:17 +00:00
nrf51.h arm: Stub out NRF51 TWI magnetometer/accelerometer detection 2019-01-29 11:46:03 +00:00
omap.h
primecell.h
pxa.h hw/pcmcia: Remove PCMCIACardState from "qemu/typedefs.h" 2019-01-22 05:14:32 +01:00
raspi_platform.h
sharpsl.h
smmu-common.h
smmuv3.h
soc_dma.h
stm32f205_soc.h
sysbus-fdt.h
virt.h hw/arm/virt: Split the memory map description 2019-03-05 15:55:09 +00:00
xlnx-versal.h hw/arm: versal: Correct the nr of IRQs to 192 2018-12-13 13:48:04 +00:00
xlnx-zynqmp.h arm/xlnx-zynqmp: put APUs and RPUs in separate CPU clusters 2019-01-07 15:23:46 +00:00