mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-17 01:54:22 +00:00
feat(handoff): add support for RESET_TO_BL2
When BL2 is enabled as the entrypoint in the reset vector, none of the TL initialisation ordinarily performed in BL1 will have been done. This change ensures that BL2 has a secure TL to pass information onto BL31 through. Change-Id: I553b0b7aac9390cd6a2d63471b81ddc72cc40a60 Signed-off-by: Harrison Mutai <harrison.mutai@arm.com>
This commit is contained in:
parent
9c11ed7e3e
commit
f019c8013e
2 changed files with 12 additions and 1 deletions
|
@ -127,6 +127,17 @@ void bl2_early_platform_setup2(u_register_t arg0, u_register_t arg1, u_register_
|
|||
void bl2_plat_preload_setup(void)
|
||||
{
|
||||
#if TRANSFER_LIST
|
||||
/* Assume the secure TL hasn't been initialised if BL2 is running at EL3. */
|
||||
#if RESET_TO_BL2
|
||||
secure_tl = transfer_list_init((void *)PLAT_ARM_EL3_FW_HANDOFF_BASE,
|
||||
PLAT_ARM_FW_HANDOFF_SIZE);
|
||||
|
||||
if (secure_tl == NULL) {
|
||||
ERROR("Secure transfer list initialisation failed!\n");
|
||||
panic();
|
||||
}
|
||||
#endif
|
||||
|
||||
arm_transfer_list_dyn_cfg_init(secure_tl);
|
||||
#else
|
||||
arm_bl2_dyn_cfg_init();
|
||||
|
|
|
@ -504,7 +504,7 @@ void __init bl31_plat_arch_setup(void)
|
|||
|
||||
arm_bl31_plat_arch_setup();
|
||||
|
||||
#if TRANSFER_LIST
|
||||
#if TRANSFER_LIST && !RESET_TO_BL2
|
||||
te = transfer_list_find(secure_tl, TL_TAG_FDT);
|
||||
assert(te != NULL);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue