From bf9b6d50e0285a253e2806c3c694149751475b19 Mon Sep 17 00:00:00 2001 From: David Crocker Date: Tue, 15 Dec 2020 21:54:04 +0000 Subject: Disable cache while writing data to user signature --- src/Hardware/NonVolatileMemory.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/Hardware/NonVolatileMemory.cpp') diff --git a/src/Hardware/NonVolatileMemory.cpp b/src/Hardware/NonVolatileMemory.cpp index 72b91bd5..d0534821 100644 --- a/src/Hardware/NonVolatileMemory.cpp +++ b/src/Hardware/NonVolatileMemory.cpp @@ -75,7 +75,12 @@ void NonVolatileMemory::EnsureWritten() noexcept if (state == NvmState::writeNeeded) { # if SAM4E || SAM4S || SAME70 + const bool cacheEnabled = Cache::Disable(); flash_write_user_signature(reinterpret_cast(&buffer)); + if (cacheEnabled) + { + Cache::Enable(); + } # elif defined(__LPC17xx__) LPC_WriteSoftwareResetData(slot, buffer, sizeof(buffer)); # else -- cgit v1.2.3