The Odroid C2 has two GiB of memory with two reserved regions.
reg = <0x0 0x0 0x0 0x1000000>;
reg = <0x0 0x10000000 0x0 0x200000>;

Patch
bfcef28ae4cf (arm: add initial support for Amlogic Meson and
ODROID-C2) provided function dram_init_banksize to reserve the
first 16 MiB of RAM for firmware in function dram_init_banksize
in arch/arm/mach-meson/board.c and defined
CONFIG_NR_DRAM_BANKS = 1.

With this patch dram_init_banksize is changed to additionally
reserve the 2MiB region for the ARM Trusted Firmware (BL31).
CONFIG_NR_DRAM_BANKS is set to 2.

Cc: Andreas Färber <[email protected]>
Signed-off-by: Heinrich Schuchardt <[email protected]>
---
v2:
        Do not change the dtb but the board file as
        suggested by Andreas Färber.
---
 arch/arm/mach-meson/board.c         | 8 +++++---
 include/configs/meson-gxbb-common.h | 2 +-
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-meson/board.c b/arch/arm/mach-meson/board.c
index 273dbeb020..e89c6aace9 100644
--- a/arch/arm/mach-meson/board.c
+++ b/arch/arm/mach-meson/board.c
@@ -37,9 +37,11 @@ int dram_init(void)
 int dram_init_banksize(void)
 {
        /* Reserve first 16 MiB of RAM for firmware */
-       gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE + (16 * 1024 * 1024);
-       gd->bd->bi_dram[0].size = gd->ram_size - (16 * 1024 * 1024);
-
+       gd->bd->bi_dram[0].start = 0x1000000;
+       gd->bd->bi_dram[0].size  = 0xf000000;
+       /* Reserve 2 MiB for ARM Trusted Firmware (BL31) */
+       gd->bd->bi_dram[1].start = 0x10000000;
+       gd->bd->bi_dram[1].size  = gd->ram_size - 0x10200000;
        return 0;
 }
 
diff --git a/include/configs/meson-gxbb-common.h 
b/include/configs/meson-gxbb-common.h
index 89e3807a14..ed55f441a4 100644
--- a/include/configs/meson-gxbb-common.h
+++ b/include/configs/meson-gxbb-common.h
@@ -10,7 +10,7 @@
 
 #define CONFIG_CPU_ARMV8
 #define CONFIG_REMAKE_ELF
-#define CONFIG_NR_DRAM_BANKS           1
+#define CONFIG_NR_DRAM_BANKS           2
 #define CONFIG_ENV_IS_NOWHERE          1
 #define CONFIG_ENV_SIZE                        0x2000
 #define CONFIG_SYS_MAXARGS             32
-- 
2.11.0

_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to