From ce1bbeb6a44647300b76e3b5431b3562174db90c Mon Sep 17 00:00:00 2001 From: whitequark Date: Mon, 12 Jun 2017 09:18:10 +0000 Subject: [PATCH] Issue DSB; ISB after changing FPU status to ensure completion. --- src/peripheral/mod.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/peripheral/mod.rs b/src/peripheral/mod.rs index f0a7aaaa..bda78612 100644 --- a/src/peripheral/mod.rs +++ b/src/peripheral/mod.rs @@ -11,6 +11,7 @@ use core::ptr; use volatile_register::{RO, RW, WO}; use interrupt::{CriticalSection, Nr}; +use asm; #[cfg(test)] mod test; @@ -473,6 +474,8 @@ impl Scb { } } unsafe { self.cpacr.write(cpacr) } + asm::dsb(); + asm::isb(); } /// Shorthand for `set_fpu_access_mode(FpuAccessMode::Enabled)`