From e2ae6ceccc6fc96debbfbacfb4b288cbf78da0f2 Mon Sep 17 00:00:00 2001 From: Ghennadi Procopciuc Date: Tue, 26 Nov 2024 17:05:58 +0200 Subject: [PATCH] feat(s32g274a): enable MMU for BL31 stage Enable the MMU and add two entries to map the BL31 code and data regions. Additional mappings will be added dynamically, enhancing flexibility and modularity during the porting process. Change-Id: I333c34c58274a115f62f54730bba5b71165e3e36 Signed-off-by: Ghennadi Procopciuc --- plat/nxp/s32/s32g274ardb2/plat_bl31_setup.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/plat/nxp/s32/s32g274ardb2/plat_bl31_setup.c b/plat/nxp/s32/s32g274ardb2/plat_bl31_setup.c index ddd0e29bc..22c66b00e 100644 --- a/plat/nxp/s32/s32g274ardb2/plat_bl31_setup.c +++ b/plat/nxp/s32/s32g274ardb2/plat_bl31_setup.c @@ -10,6 +10,8 @@ #include #include +#include + static entry_point_info_t bl33_image_ep_info; static unsigned int s32g2_mpidr_to_core_pos(unsigned long mpidr); @@ -27,8 +29,6 @@ static uint32_t get_spsr_for_bl33_entry(void) void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1, u_register_t arg2, u_register_t arg3) { - console_s32g2_register(); - SET_PARAM_HEAD(&bl33_image_ep_info, PARAM_EP, VERSION_1, 0); bl33_image_ep_info.pc = BL33_BASE; bl33_image_ep_info.spsr = get_spsr_for_bl33_entry(); @@ -37,6 +37,14 @@ void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1, void bl31_plat_arch_setup(void) { + int ret; + + ret = s32cc_bl_mmu_setup(); + if (ret != 0) { + panic(); + } + + console_s32g2_register(); } struct entry_point_info *bl31_plat_get_next_image_ep_info(uint32_t type)