From f04dfbb297f03d7f8d7f7c00ce8712e1a10295cf Mon Sep 17 00:00:00 2001 From: Icenowy Zheng <icenowy@sipeed.com> Date: Fri, 23 Jul 2021 11:35:24 +0800 Subject: [PATCH] refactor(plat/allwinner): allow custom BL31 offset Not all Allwinner SoCs have the same arrangement to SRAM A2. Allow to specify a offset at which BL31 will stay in SRAM A2. Change-Id: I574140ffd704a796fae0a5c2d0976e85c7fcbdf9 Signed-off-by: Icenowy Zheng <icenowy@sipeed.com> --- plat/allwinner/common/include/platform_def.h | 3 ++- plat/allwinner/sun50i_a64/include/sunxi_mmap.h | 1 + plat/allwinner/sun50i_h6/include/sunxi_mmap.h | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/plat/allwinner/common/include/platform_def.h b/plat/allwinner/common/include/platform_def.h index 56a2ad6f7..49951e080 100644 --- a/plat/allwinner/common/include/platform_def.h +++ b/plat/allwinner/common/include/platform_def.h @@ -25,7 +25,8 @@ #else /* !SUNXI_BL31_IN_DRAM */ -#define BL31_BASE (SUNXI_SRAM_A2_BASE + 0x4000) +#define BL31_BASE (SUNXI_SRAM_A2_BASE + \ + SUNXI_SRAM_A2_BL31_OFFSET) #define BL31_LIMIT (SUNXI_SRAM_A2_BASE + \ SUNXI_SRAM_A2_SIZE - SUNXI_SCP_SIZE) diff --git a/plat/allwinner/sun50i_a64/include/sunxi_mmap.h b/plat/allwinner/sun50i_a64/include/sunxi_mmap.h index 6c847d39b..6d10921c6 100644 --- a/plat/allwinner/sun50i_a64/include/sunxi_mmap.h +++ b/plat/allwinner/sun50i_a64/include/sunxi_mmap.h @@ -15,6 +15,7 @@ #define SUNXI_SRAM_A1_BASE 0x00010000 #define SUNXI_SRAM_A1_SIZE 0x00008000 #define SUNXI_SRAM_A2_BASE 0x00040000 +#define SUNXI_SRAM_A2_BL31_OFFSET 0x00004000 #define SUNXI_SRAM_A2_SIZE 0x00014000 #define SUNXI_SRAM_C_BASE 0x00018000 #define SUNXI_SRAM_C_SIZE 0x0001c000 diff --git a/plat/allwinner/sun50i_h6/include/sunxi_mmap.h b/plat/allwinner/sun50i_h6/include/sunxi_mmap.h index 2d7b09837..58216d848 100644 --- a/plat/allwinner/sun50i_h6/include/sunxi_mmap.h +++ b/plat/allwinner/sun50i_h6/include/sunxi_mmap.h @@ -15,6 +15,7 @@ #define SUNXI_SRAM_A1_BASE 0x00020000 #define SUNXI_SRAM_A1_SIZE 0x00008000 #define SUNXI_SRAM_A2_BASE 0x00100000 +#define SUNXI_SRAM_A2_BL31_OFFSET 0x00004000 #define SUNXI_SRAM_A2_SIZE 0x00018000 #define SUNXI_SRAM_C_BASE 0x00028000 #define SUNXI_SRAM_C_SIZE 0x0001e000 -- GitLab