diff --git a/cpu/cortexm_common/vectors_cortexm.c b/cpu/cortexm_common/vectors_cortexm.c index 5f39c5c552..4a751d4bcf 100644 --- a/cpu/cortexm_common/vectors_cortexm.c +++ b/cpu/cortexm_common/vectors_cortexm.c @@ -140,10 +140,6 @@ void reset_handler_default(void) } #endif /* CPU_HAS_BACKUP_RAM */ -#if defined(MODULE_MPU_STACK_GUARD) || defined(MODULE_MPU_NOEXEC_RAM) - mpu_enable(); -#endif - #ifdef MODULE_MPU_NOEXEC_RAM /* Mark the RAM non executable. This is a protection mechanism which * makes exploitation of buffer overflows significantly harder. @@ -169,6 +165,10 @@ void reset_handler_default(void) } #endif +#if defined(MODULE_MPU_STACK_GUARD) || defined(MODULE_MPU_NOEXEC_RAM) + mpu_enable(); +#endif + post_startup(); /* initialize the board (which also initiates CPU initialization) */