spl: atf: pass kernel parameters through bl33_ep_info->args

Pass when enable CONFIG_SPL_KERNEL_BOOT.

Change-Id: Iee442466df59eeaa0f477f264f523b026e516168
Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>
This commit is contained in:
Jason Zhu 2020-02-17 10:10:11 +08:00 committed by jason.zhu
parent 67a616b84e
commit 189f3a8c31
1 changed files with 12 additions and 1 deletions

View File

@ -80,7 +80,18 @@ bl33_setup:
bl33_ep_info->pc = bl33_entry;
bl33_ep_info->spsr = SPSR_64(MODE_EL2, MODE_SP_ELX,
DISABLE_ALL_EXECPTIONS);
#if defined(CONFIG_SPL_KERNEL_BOOT) && defined(CONFIG_ARM64)
/*
* Reference: arch/arm/lib/bootm.c
* boot_jump_linux(bootm_headers_t *images, int flag)
* {
* ......
* armv8_switch_to_el2((u64)images->ft_addr, 0, 0, 0,
* images->ep, ES_TO_AARCH64);
* }
*/
bl33_ep_info->args.arg0 = CONFIG_SPL_FDT_ADDR;
#endif
bl2_to_bl31_params->bl33_image_info = &bl31_params_mem.bl33_image_info;
SET_PARAM_HEAD(bl2_to_bl31_params->bl33_image_info,
ATF_PARAM_IMAGE_BINARY, ATF_VERSION_1, 0);