rockchip: Update BL31_BASE to 0x40000
authorKever Yang <kever.yang@rock-chips.com>
Thu, 19 Sep 2019 02:37:36 +0000 (10:37 +0800)
committerKever Yang <kever.yang@rock-chips.com>
Fri, 20 Sep 2019 00:42:53 +0000 (08:42 +0800)
Rockchip platform is using the first 1MB of DRAM as secure ram space,
and there is a vendor loader who loads and runs the BL31/BL32/BL33,
this loader is usually load by SoC BootRom to the start addres of DRAM,
we need to reserve enough space for this loader so that it doesn't need
to do the relocate when loading the BL31. eg.
We use U-Boot SPL to load ATF BL31 and U-Boot proper as BL33, the SPL
TEXT BASE is offset 0 of DRAM which is decide by Bootrom; if we update
the BL31_BASE to offset 0x40000(256KB), then the 0~0x40000 should be
enough for SPL and no need to do the relocate while the space size
0x10000(64KB) may not enough for SPL.
After this update, the BL31 can use the rest 768KB of the first 1MB,
which is also enough, and the loader who is using BL31 elf file can
support this update without any change.

Change-Id: I66dc685594d77f10f9a49c3be015fd6729250ece
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
plat/rockchip/px30/include/platform_def.h
plat/rockchip/rk3288/include/shared/bl32_param.h
plat/rockchip/rk3328/include/platform_def.h
plat/rockchip/rk3368/include/platform_def.h
plat/rockchip/rk3399/include/shared/bl31_param.h

index 8e70a7031d0f8b3975815fc8a608f5c2e83d0bff..9dccab82bee4dbe68809d02c366377d972670682 100644 (file)
@@ -79,7 +79,7 @@
 /*
  * Put BL3-1 at the top of the Trusted RAM
  */
-#define BL31_BASE              (TZRAM_BASE + 0x10000)
+#define BL31_BASE              (TZRAM_BASE + 0x40000)
 #define BL31_LIMIT             (TZRAM_BASE + TZRAM_SIZE)
 
 /*******************************************************************************
index 950e41d66a86a258d8a1d9ab89126db38744ea36..ffdb2f38c484e5ef4206ad1812334e2eeb84dc47 100644 (file)
@@ -10,9 +10,9 @@
 /*******************************************************************************
  * Platform memory map related constants
  ******************************************************************************/
-/* TF text, ro, rw, Size: 2MB */
+/* TF text, ro, rw, Size: 1MB */
 #define TZRAM_BASE             (0x0)
-#define TZRAM_SIZE             (0x200000)
+#define TZRAM_SIZE             (0x100000)
 
 /*******************************************************************************
  * BL32 specific defines.
@@ -20,7 +20,7 @@
 /*
  * Put BL32 at the top of the Trusted RAM
  */
-#define BL32_BASE                      (TZRAM_BASE + 0x100000)
+#define BL32_BASE                      (TZRAM_BASE + 0x40000)
 #define BL32_LIMIT                     (TZRAM_BASE + TZRAM_SIZE)
 
 #endif /* BL32_PARAM_H */
index 1120fb84c248828beedf4619d91242a7c8121988..baac12d3bafed8f832abe07ae66b0fd82d688889 100644 (file)
@@ -76,7 +76,7 @@
 /*
  * Put BL3-1 at the top of the Trusted RAM
  */
-#define BL31_BASE              (TZRAM_BASE + 0x10000)
+#define BL31_BASE              (TZRAM_BASE + 0x40000)
 #define BL31_LIMIT             (TZRAM_BASE + TZRAM_SIZE)
 
 /*******************************************************************************
index 6c2cffa8c58a208a6ecc2a98977f162cd978a4c3..9334a83ae69eded7215c40c0bc02302ac8b6f202 100644 (file)
@@ -77,7 +77,7 @@
 /*
  * Put BL3-1 at the top of the Trusted RAM
  */
-#define BL31_BASE              (TZRAM_BASE + 0x10000)
+#define BL31_BASE              (TZRAM_BASE + 0x40000)
 #define BL31_LIMIT     (TZRAM_BASE + TZRAM_SIZE)
 
 /*******************************************************************************
index e7f2226cd8dd646c776f76427471e9bf1ca4cf51..6e7e8ba099e9242fc2efea6291aea5ec20865ca8 100644 (file)
@@ -20,7 +20,7 @@
 /*
  * Put BL31 at the top of the Trusted RAM
  */
-#define BL31_BASE              (TZRAM_BASE + 0x1000)
+#define BL31_BASE              (TZRAM_BASE + 0x40000)
 #define BL31_LIMIT             (TZRAM_BASE + TZRAM_SIZE)
 
 #endif /* BL31_PARAM_H */