Fix error handling in STM32 test cases
diff --git a/tests/site_scons/platforms/stm32/run_test.sh b/tests/site_scons/platforms/stm32/run_test.sh
index 2c111f5..a3097b7 100755
--- a/tests/site_scons/platforms/stm32/run_test.sh
+++ b/tests/site_scons/platforms/stm32/run_test.sh
@@ -7,13 +7,13 @@
test X$OPENOCD_BOARD == X && export OPENOCD_BOARD=board/stm32f7discovery.cfg
-openocd -f $OPENOCD_BOARD \
+timeout 1200s openocd -f $OPENOCD_BOARD \
-c "reset_config srst_only srst_nogate connect_assert_srst" \
-c "init" -c "arm semihosting enable" \
-c "arm semihosting_cmdline $BASENAME $ARGS" \
-c "reset halt" \
-c "load_image $BINARY 0" \
- -c "reset halt" -c "resume 0x20000000" 2>openocd.log
+ -c "reset halt" -c "resume 0x20000040" 2>openocd.log
RESULT=$?
diff --git a/tests/site_scons/platforms/stm32/stm32_ram.ld b/tests/site_scons/platforms/stm32/stm32_ram.ld
index afaccbc..9fbe9ca 100644
--- a/tests/site_scons/platforms/stm32/stm32_ram.ld
+++ b/tests/site_scons/platforms/stm32/stm32_ram.ld
@@ -46,8 +46,8 @@
{
.text :
{
- KEEP(*(.ramboot))
KEEP(*(.isr_vector))
+ KEEP(*(.ramboot))
*(.text*)
KEEP(*(.init))
diff --git a/tests/site_scons/platforms/stm32/vectors.c b/tests/site_scons/platforms/stm32/vectors.c
index f5b1d11..7e98098 100644
--- a/tests/site_scons/platforms/stm32/vectors.c
+++ b/tests/site_scons/platforms/stm32/vectors.c
@@ -21,7 +21,7 @@
while(1);
}
-void* const g_vector_table[] __attribute__((section(".isr_vector"))) = {
+void* const g_vector_table[16] __attribute__((section(".isr_vector"))) = {
(void*)&__StackTop,
(void*)&_start,
(void*)&HardFaultHandler,