ARM: IMX8M: introduce support for dynamic memory variants
- Current implementation requires that memory size is configured using
PHYS_SDRAM and PHYS_SDRAM_2 settings depending on actual memory
size in the board config file. As PHYS_SDRAM_2 memory area is not
used if total memory size is < 3 GiB, cache and MMU setup would use
wrong values when initialized. Thus, dynamic initialization of 4 GiB
and 2 GiB modules is not possible with one single bootloader binary.
- Add support to determine actual memory size using the
'board_phys_sdram_size' function and calculate size of DRAM1 and
DRAM2 regions accordingly. Fix cache enable setup to use detected size
of memory areas instead of fixed config values.
- Ensure that memory regions are set up properly even if OPTEE memory
region splits DRAM1 into multiple regions.
Signed-off-by:
Thomas Schaefer <thomas.schaefer@kontron.com>
Please register or sign in to comment