mirror of https://github.com/ARMmbed/mbed-os.git
Fix crash on boot due to vector size mismatch
If NVIC_NUM_VECTORS is larger than the space allocated by the vector table in ram (__ram_vector_table_size__) then the call to mbed_cpy_nvic during boot will corrupt valid data, which can lead to a crash. This patch fixes the declared number of vectors on the KL27Z, KL43Z and KL82Z to fix this crash.pull/4939/head
parent
4978a08ae2
commit
b402b7a8c6
|
@ -39,7 +39,7 @@ extern uint32_t __VECTOR_RAM[];
|
|||
#endif
|
||||
|
||||
/* Symbols defined by the linker script */
|
||||
#define NVIC_NUM_VECTORS (16 + 240) // CORE + MCU Peripherals
|
||||
#define NVIC_NUM_VECTORS (16 + 32) // CORE + MCU Peripherals
|
||||
#define NVIC_RAM_VECTOR_ADDRESS (__VECTOR_RAM) // Vectors positioned at start of RAM
|
||||
|
||||
#endif
|
||||
|
|
|
@ -39,7 +39,7 @@ extern uint32_t __VECTOR_RAM[];
|
|||
#endif
|
||||
|
||||
/* Symbols defined by the linker script */
|
||||
#define NVIC_NUM_VECTORS (16 + 240) // CORE + MCU Peripherals
|
||||
#define NVIC_NUM_VECTORS (16 + 32) // CORE + MCU Peripherals
|
||||
#define NVIC_RAM_VECTOR_ADDRESS (__VECTOR_RAM) // Vectors positioned at start of RAM
|
||||
|
||||
#endif
|
||||
|
|
|
@ -39,7 +39,7 @@ extern uint32_t __VECTOR_RAM[];
|
|||
#endif
|
||||
|
||||
/* Symbols defined by the linker script */
|
||||
#define NVIC_NUM_VECTORS (16 + 240) // CORE + MCU Peripherals
|
||||
#define NVIC_NUM_VECTORS (16 + 32) // CORE + MCU Peripherals
|
||||
#define NVIC_RAM_VECTOR_ADDRESS (__VECTOR_RAM) // Vectors positioned at start of RAM
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue