diff options
author | Sathees Balya <sathees.balya@arm.com> | 2018-11-02 14:56:06 +0000 |
---|---|---|
committer | Sathees Balya <sathees.balya@arm.com> | 2018-11-23 11:52:01 +0000 |
commit | afa5cfea6079bf7a10db53edcc72e6b8fa05c600 (patch) | |
tree | ad5afb1a760e424a22c4d79bf302751def7aaaea /plat/arm | |
parent | 5c04fc789908f81d62886d83adee7e6c5cf356de (diff) | |
download | platform_external_arm-trusted-firmware-afa5cfea6079bf7a10db53edcc72e6b8fa05c600.tar.gz platform_external_arm-trusted-firmware-afa5cfea6079bf7a10db53edcc72e6b8fa05c600.tar.bz2 platform_external_arm-trusted-firmware-afa5cfea6079bf7a10db53edcc72e6b8fa05c600.zip |
juno: Add romlib support
This patch adds support to build a combined BL1
and ROMLIB binary file with the right page
alignment in Juno. When USE_ROMLIB=1 is set for
Juno, it generates the combined file
bl1_romlib.bin which needs to be used instead of
bl1.bin
Change-Id: I407efbe48d3e522fa6ef855538a9587193cb1919
Signed-off-by: Sathees Balya <sathees.balya@arm.com>
Diffstat (limited to 'plat/arm')
-rw-r--r-- | plat/arm/board/juno/include/platform_def.h | 25 | ||||
-rw-r--r-- | plat/arm/board/juno/platform.mk | 8 |
2 files changed, 22 insertions, 11 deletions
diff --git a/plat/arm/board/juno/include/platform_def.h b/plat/arm/board/juno/include/platform_def.h index 735e4a336..0bbe3e195 100644 --- a/plat/arm/board/juno/include/platform_def.h +++ b/plat/arm/board/juno/include/platform_def.h @@ -55,7 +55,8 @@ #define PLAT_ARM_TRUSTED_SRAM_SIZE UL(0x00040000) /* 256 KB */ /* Use the bypass address */ -#define PLAT_ARM_TRUSTED_ROM_BASE V2M_FLASH0_BASE + BL1_ROM_BYPASS_OFFSET +#define PLAT_ARM_TRUSTED_ROM_BASE (V2M_FLASH0_BASE + \ + BL1_ROM_BYPASS_OFFSET) #define NSRAM_BASE UL(0x2e000000) #define NSRAM_SIZE UL(0x00008000) /* 32KB */ @@ -64,11 +65,22 @@ #define PLAT_ARM_MEM_PROTEC_VA_FRAME UL(0xc0000000) /* + * PLAT_ARM_MAX_ROMLIB_RW_SIZE is define to use a full page + */ + +#if USE_ROMLIB +#define PLAT_ARM_MAX_ROMLIB_RW_SIZE UL(0x1000) +#define PLAT_ARM_MAX_ROMLIB_RO_SIZE UL(0xe000) +#else +#define PLAT_ARM_MAX_ROMLIB_RW_SIZE UL(0) +#define PLAT_ARM_MAX_ROMLIB_RO_SIZE UL(0) +#endif + +/* * Actual ROM size on Juno is 64 KB, but TBB currently requires at least 80 KB * in debug mode. We can test TBB on Juno bypassing the ROM and using 128 KB of * flash */ -#define PLAT_ARM_MAX_ROMLIB_RO_SIZE 0 #if TRUSTED_BOARD_BOOT #define PLAT_ARM_TRUSTED_ROM_SIZE UL(0x00020000) @@ -121,15 +133,6 @@ #endif /* - * PLAT_ARM_MAX_ROMLIB_RW_SIZE is define to use a full page - */ -#if USE_ROMLIB -#define PLAT_ARM_MAX_ROMLIB_RW_SIZE UL(0x1000) -#else -#define PLAT_ARM_MAX_ROMLIB_RW_SIZE UL(0) -#endif - -/* * PLAT_ARM_MAX_BL2_SIZE is calculated using the current BL2 debug size plus a * little space for growth. */ diff --git a/plat/arm/board/juno/platform.mk b/plat/arm/board/juno/platform.mk index f28139ddc..ba1acd425 100644 --- a/plat/arm/board/juno/platform.mk +++ b/plat/arm/board/juno/platform.mk @@ -96,6 +96,14 @@ ifneq (${RESET_TO_BL31},0) Please set RESET_TO_BL31 to 0.") endif +ifeq ($(USE_ROMLIB),1) +all : bl1_romlib.bin +endif + +bl1_romlib.bin : $(BUILD_PLAT)/bl1.bin $(BUILD_PLAT)/romlib/romlib.bin + @echo "Building combined BL1 and ROMLIB binary for Juno $@" + ./lib/romlib/gen_combined_bl1_romlib.sh -o bl1_romlib.bin $(BUILD_PLAT) + # Errata workarounds for Cortex-A53: ERRATA_A53_826319 := 1 ERRATA_A53_835769 := 1 |