Skip to content

Commit b8727ec

Browse files
author
Cruz Monrreal
authored
Merge pull request #7705 from davidsaada/david_rom_end_macro
FlashIAP: Add a ROM end macro
2 parents 0eb7e7d + 535b196 commit b8727ec

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

drivers/FlashIAP.h

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,20 @@
2828
#include "platform/SingletonPtr.h"
2929
#include "platform/PlatformMutex.h"
3030
#include "platform/NonCopyable.h"
31+
#include <algorithm>
32+
33+
// Export ROM end address
34+
#if defined(TOOLCHAIN_GCC_ARM)
35+
extern uint32_t __etext;
36+
#define FLASHIAP_ROM_END ((uint32_t) &__etext)
37+
#elif defined(TOOLCHAIN_ARM)
38+
extern uint32_t Load$$LR$$LR_IROM1$$Limit[];
39+
#define FLASHIAP_ROM_END ((uint32_t)Load$$LR$$LR_IROM1$$Limit)
40+
#elif defined(TOOLCHAIN_IAR)
41+
#pragma section=".rodata"
42+
#pragma section=".text"
43+
#define FLASHIAP_ROM_END (std::max((uint32_t) __section_end(".rodata"), (uint32_t) __section_end(".text")))
44+
#endif
3145

3246
namespace mbed {
3347

0 commit comments

Comments
 (0)