diff options
author | Stefan Roese <sr@denx.de> | 2016-11-11 08:18:44 +0100 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2016-12-05 13:34:33 +0100 |
commit | 059f75d501c8a92c6e25b6996e28a81ee6cb0418 (patch) | |
tree | fda39ab59abe1eaa5f6eede066192662ae696129 /arch | |
parent | 1ec5aa630a02174734725ce49bd5351ad5037c2e (diff) | |
download | u-boot-imx-059f75d501c8a92c6e25b6996e28a81ee6cb0418.zip u-boot-imx-059f75d501c8a92c6e25b6996e28a81ee6cb0418.tar.gz u-boot-imx-059f75d501c8a92c6e25b6996e28a81ee6cb0418.tar.bz2 |
arm64: mvebu: Restrict memory size to a usable maximum
Not all memory is mapped in the MMU. So we need to restrict the memory
size so that U-Boot does not try to access it. Also, the internal
registers are located at 0xf000.0000 - 0xffff.ffff. Currently only 2GiB
are mapped for system memory. This is what we pass to the U-Boot
subsystem here.
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Nadav Haklai <nadavh@marvell.com>
Cc: Neta Zur Hershkovits <neta@marvell.com>
Cc: Kostya Porotchkin <kostap@marvell.com>
Cc: Omri Itach <omrii@marvell.com>
Cc: Igal Liberman <igall@marvell.com>
Cc: Haim Boot <hayim@marvell.com>
Cc: Hanna Hawa <hannah@marvell.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-mvebu/arm64-common.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/mach-mvebu/arm64-common.c b/arch/arm/mach-mvebu/arm64-common.c index 1fc2ff2..8f02655 100644 --- a/arch/arm/mach-mvebu/arm64-common.c +++ b/arch/arm/mach-mvebu/arm64-common.c @@ -17,6 +17,23 @@ DECLARE_GLOBAL_DATA_PTR; /* + * Not all memory is mapped in the MMU. So we need to restrict the + * memory size so that U-Boot does not try to access it. Also, the + * internal registers are located at 0xf000.0000 - 0xffff.ffff. + * Currently only 2GiB are mapped for system memory. This is what + * we pass to the U-Boot subsystem here. + */ +#define USABLE_RAM_SIZE 0x80000000 + +ulong board_get_usable_ram_top(ulong total_size) +{ + if (gd->ram_size > USABLE_RAM_SIZE) + return USABLE_RAM_SIZE; + + return gd->ram_size; +} + +/* * On ARMv8, MBus is not configured in U-Boot. To enable compilation * of the already implemented drivers, lets add a dummy version of * this function so that linking does not fail. |