From 245bc4f3d85d4cd5734f98fa3b1056e54e2b32de Mon Sep 17 00:00:00 2001 From: Liam Kinne Date: Tue, 21 Jan 2025 05:41:34 +1000 Subject: [PATCH] clear VTOR before launch --- src/dfu.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/dfu.rs b/src/dfu.rs index be52cc9..8028800 100644 --- a/src/dfu.rs +++ b/src/dfu.rs @@ -162,6 +162,12 @@ impl DfuFlash { while f.sr.read().bsy().bit_is_set() {} + // reset VTOR preventing interrupts after reset jumping to old + // addresses + unsafe { + (*cortex_m::peripheral::SCB::PTR).vtor.write(0x0800_0000); + }; + // launch new firmware f.cr.modify(|_, w| w.obl_launch().set_bit()); });