diff --git a/boards/mro/ctrl-zero-h7-oem/src/init.c b/boards/mro/ctrl-zero-h7-oem/src/init.c index a7fd31a20c..02a4a2eb7a 100644 --- a/boards/mro/ctrl-zero-h7-oem/src/init.c +++ b/boards/mro/ctrl-zero-h7-oem/src/init.c @@ -60,6 +60,8 @@ #include #include +#include + __BEGIN_DECLS extern void led_init(void); extern void led_on(int led); @@ -121,6 +123,16 @@ __EXPORT void board_on_reset(int status) ************************************************************************************/ __EXPORT void stm32_boardinitialize(void) { + // clear all existing MPU configuration from bootloader + for (int region = 0; region < CONFIG_ARM_MPU_NREGIONS; region++) { + putreg32(region, MPU_RNR); + putreg32(0, MPU_RBAR); + putreg32(0, MPU_RASR); + + // save + putreg32(0, MPU_CTRL); + } + /* Reset PWM first thing */ board_on_reset(-1); diff --git a/boards/mro/ctrl-zero-h7/src/init.c b/boards/mro/ctrl-zero-h7/src/init.c index a7fd31a20c..02a4a2eb7a 100644 --- a/boards/mro/ctrl-zero-h7/src/init.c +++ b/boards/mro/ctrl-zero-h7/src/init.c @@ -60,6 +60,8 @@ #include #include +#include + __BEGIN_DECLS extern void led_init(void); extern void led_on(int led); @@ -121,6 +123,16 @@ __EXPORT void board_on_reset(int status) ************************************************************************************/ __EXPORT void stm32_boardinitialize(void) { + // clear all existing MPU configuration from bootloader + for (int region = 0; region < CONFIG_ARM_MPU_NREGIONS; region++) { + putreg32(region, MPU_RNR); + putreg32(0, MPU_RBAR); + putreg32(0, MPU_RASR); + + // save + putreg32(0, MPU_CTRL); + } + /* Reset PWM first thing */ board_on_reset(-1); diff --git a/boards/mro/pixracerpro/src/init.c b/boards/mro/pixracerpro/src/init.c index 5a5748918b..7085a45233 100644 --- a/boards/mro/pixracerpro/src/init.c +++ b/boards/mro/pixracerpro/src/init.c @@ -60,6 +60,8 @@ #include #include +#include + __BEGIN_DECLS extern void led_init(void); extern void led_on(int led); @@ -121,6 +123,16 @@ __EXPORT void board_on_reset(int status) ************************************************************************************/ __EXPORT void stm32_boardinitialize(void) { + // clear all existing MPU configuration from bootloader + for (int region = 0; region < CONFIG_ARM_MPU_NREGIONS; region++) { + putreg32(region, MPU_RNR); + putreg32(0, MPU_RBAR); + putreg32(0, MPU_RASR); + + // save + putreg32(0, MPU_CTRL); + } + /* Reset PWM first thing */ board_on_reset(-1);