From 80e17b1e53801b13ec47a1fd8038641aa4be2e1d Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Wed, 18 Sep 2019 10:49:23 -0400 Subject: stm32: Move VTOR fixup from main() to chip specific code Signed-off-by: Kevin O'Connor --- src/stm32/stm32f1.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/stm32/stm32f1.c') diff --git a/src/stm32/stm32f1.c b/src/stm32/stm32f1.c index e1ef56aa..8723c6d1 100644 --- a/src/stm32/stm32f1.c +++ b/src/stm32/stm32f1.c @@ -5,6 +5,7 @@ // This file may be distributed under the terms of the GNU GPLv3 license. #include "autoconf.h" // CONFIG_CLOCK_REF_8M +#include "board/armcm_boot.h" // VectorTable #include "board/irq.h" // irq_disable #include "board/usb_cdc.h" // usb_request_bootloader #include "internal.h" // enable_pclock @@ -125,6 +126,10 @@ usb_request_bootloader(void) void clock_setup(void) { + // The SystemInit() code alters VTOR - restore it + SCB->VTOR = (uint32_t)VectorTable; + + // Configure and enable PLL uint32_t cfgr; if (CONFIG_CLOCK_REF_8M) { // Configure 72Mhz PLL from external 8Mhz crystal (HSE) -- cgit v1.2.3-70-g09d2