You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As the build tool in mbed-os 5.13 cannot appropriately deal with a segmented
bootloader when combining it with an application, this commit adjusts the
size reserved for interrupts (via the linker file) to avoid a bootloader
segmentation due to an unpopulated ROM area.
The microcontroller has a total of 60 vector interrupts + 16 exception
handlers. The allocated ROM flash for interrupts should be (60 + 16) x word
size in bytes = 76 x 4 = 304 = 0x130.
This commit changes the interrupt reserved space from 0x140 to 0x130.
Copy file name to clipboardExpand all lines: targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_LPC55S69/TARGET_M33_NS/device/TOOLCHAIN_ARMC6/LPC55S69_cm33_core0_flash.sct
Copy file name to clipboardExpand all lines: targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_LPC55S69/TARGET_M33_NS/device/TOOLCHAIN_GCC_ARM/LPC55S69_cm33_core0_flash.ld
Copy file name to clipboardExpand all lines: targets/TARGET_NXP/TARGET_MCUXpresso_MCUS/TARGET_LPC55S69/TARGET_M33_NS/device/TOOLCHAIN_IAR/LPC55S69_cm33_core0_flash.icf
+18-2Lines changed: 18 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -80,10 +80,26 @@ if (isdefinedsymbol(__heap_size__)) {
80
80
define symbol __size_heap__ = 0x0400;
81
81
}
82
82
83
+
if (!isdefinedsymbol(NVIC_INTERRUPT_NUM)) {
84
+
define symbol NVIC_INTERRUPT_NUM = 60;
85
+
}
86
+
87
+
if (!isdefinedsymbol(EXCEPTION_VECT_NUM)) {
88
+
define symbol EXCEPTION_VECT_NUM = 16;
89
+
}
90
+
91
+
if (!isdefinedsymbol(MEMORY_ADDR_SIZE_IN_BYTE)) {
92
+
define symbol MEMORY_ADDR_SIZE_IN_BYTE = 4;
93
+
}
94
+
95
+
if (!isdefinedsymbol(MBED_INTERRUPTS_SIZE)) {
96
+
define symbol MBED_INTERRUPTS_SIZE = ((NVIC_INTERRUPT_NUM + EXCEPTION_VECT_NUM) * MEMORY_ADDR_SIZE_IN_BYTE);
97
+
}
98
+
83
99
define symbol m_interrupts_start = MBED_APP_START;
84
-
define symbol m_interrupts_end = (MBED_APP_START + 0x13F);
100
+
define symbol m_interrupts_end = (MBED_APP_START + (MBED_INTERRUPTS_SIZE - 1));
85
101
86
-
define symbol m_text_start = (MBED_APP_START + 0x140);
102
+
define symbol m_text_start = (MBED_APP_START + MBED_INTERRUPTS_SIZE);
87
103
define symbol m_text_end = (MBED_APP_START + MBED_APP_SIZE - 1);
88
104
89
105
define symbol m_interrupts_ram_start = MBED_RAM_START;
0 commit comments