This is an automated email from the ASF dual-hosted git repository. xiaoxiang pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit 073e58a83f04fe2df5ac90ba13db970af47fe691 Author: Peter van der Perk <peter.vanderp...@nxp.com> AuthorDate: Mon May 26 09:37:35 2025 +0200 arch/arm/imxrt: support ramvectors in ITCM memory This is done by initializing the ramvectors earlier in start so that we can access the ITCM before the MPU gets configured --- arch/arm/src/imxrt/imxrt_irq.c | 2 +- arch/arm/src/imxrt/imxrt_start.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/arm/src/imxrt/imxrt_irq.c b/arch/arm/src/imxrt/imxrt_irq.c index 1188bce4e8..18da0f1488 100644 --- a/arch/arm/src/imxrt/imxrt_irq.c +++ b/arch/arm/src/imxrt/imxrt_irq.c @@ -436,7 +436,7 @@ void up_irqinitialize(void) * vector table that requires special initialization. */ - arm_ramvec_initialize(); + putreg32((uint32_t)g_ram_vectors, NVIC_VECTAB); #endif /* Set all interrupts (and exceptions) to the default priority */ diff --git a/arch/arm/src/imxrt/imxrt_start.c b/arch/arm/src/imxrt/imxrt_start.c index ff9435bbab..038fbc4aa7 100644 --- a/arch/arm/src/imxrt/imxrt_start.c +++ b/arch/arm/src/imxrt/imxrt_start.c @@ -37,6 +37,7 @@ #include "arm_internal.h" #include "nvic.h" +#include "ram_vectors.h" #include "imxrt_clockconfig.h" #include "imxrt_mpuinit.h" @@ -216,6 +217,10 @@ void __start(void) } #endif +#ifdef CONFIG_ARCH_RAMVECTORS + arm_ramvec_initialize(); +#endif + #ifdef CONFIG_ARMV7M_STACKCHECK arm_stack_check_init(); #endif