[M487] Guard from initial stack allocated on SPIM CCM memory not initialized yet

Not add this guard in IAR toolchain due to its unsupported ILINK syntax
pull/4608/head
ccli8 2017-06-12 15:04:30 +08:00
parent aa47503435
commit 694838b706
3 changed files with 16 additions and 2 deletions

View File

@ -8,6 +8,9 @@
#define MBED_APP_SIZE 0x00080000
#endif
#define SPIM_CCM_START 0x20020000
#define SPIM_CCM_END 0x20028000
LR_IROM1 MBED_APP_START {
ER_IROM1 MBED_APP_START { ; load address = execution address
*(RESET, +First)
@ -34,4 +37,6 @@ LR_IROM1 MBED_APP_START {
}
ScatterAssert(LoadLimit(LR_IROM1) <= (MBED_APP_START + MBED_APP_SIZE)) ; 512 KB APROM
ScatterAssert(ImageLimit(ARM_LIB_HEAP) <= 0x20028000) ; 160 KB SRAM
ScatterAssert(ImageLimit(ARM_LIB_STACK) <= SPIM_CCM_START) ; Guard from initial stack allocated on SPIM CCM memory
; which is not initialized yet

View File

@ -8,6 +8,9 @@
#define MBED_APP_SIZE 0x00080000
#endif
#define SPIM_CCM_START 0x20020000
#define SPIM_CCM_END 0x20028000
LR_IROM1 MBED_APP_START {
ER_IROM1 MBED_APP_START { ; load address = execution address
*(RESET, +First)
@ -34,4 +37,5 @@ LR_IROM1 MBED_APP_START {
}
ScatterAssert(LoadLimit(LR_IROM1) <= (MBED_APP_START + MBED_APP_SIZE)) ; 512 KB APROM
ScatterAssert(ImageLimit(ARM_LIB_HEAP) <= 0x20028000) ; 160 KB SRAM
ScatterAssert(ImageLimit(ARM_LIB_STACK) <= SPIM_CCM_START) ; Guard from initial stack allocated on SPIM CCM memory
; which is not initialized yet

View File

@ -11,6 +11,8 @@
#endif
StackSize = 0x800;
SPIM_CCM_START = 0x20020000;
SPIM_CCM_END = 0x20028000;
MEMORY
{
@ -171,6 +173,9 @@ SECTIONS
__StackLimit = ADDR(.stack);
PROVIDE(__stack = __StackTop);
/* Guard from initial stack allocated on SPIM CCM memory which is not initialized yet */
ASSERT(__StackTop <= SPIM_CCM_START, "SPIM CCM memory not initialized yet for initial stack")
/* Relocate vector table in SRAM */
.isr_vector.reloc (NOLOAD) :
{