How to place the flash erase/write functions in em_msc.c into Flash?


By default, all flash erase/write functions in em_msc.c are located in RAM. In order to save RAM space, these functions can relocated to flash by defining the EM_MSC_RUN_FROM_FLASH symbol in corresponding the IDE.



  • This method does not apply to EFM32 Gecko (EFM32G) devices.
  • During a write or erase, flash read accesses will be stalled, effectively halting code execution from flash. Code execution continues upon write/erase completion. Code residing in RAM may be executed during a write/erase operation.

  • Knowledge Base Articles
  • 32-bit MCUs