From 646ffec0ed554cf1dd439f3a87d0a2dc20df3a89 Mon Sep 17 00:00:00 2001 From: Scott Shawcroft Date: Wed, 6 Sep 2017 00:19:57 -0700 Subject: [PATCH] atmel-samd: Ensure MTB is off in case we ran a debug build before a non-debug build. --- atmel-samd/main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/atmel-samd/main.c b/atmel-samd/main.c index 70c3435071bb4..3a2d5a63c26d1 100644 --- a/atmel-samd/main.c +++ b/atmel-samd/main.c @@ -513,6 +513,10 @@ safe_mode_t samd21_init(void) { REG_MTB_POSITION = ((uint32_t) (mtb - REG_MTB_BASE)) & 0xFFFFFFF8; REG_MTB_FLOW = (((uint32_t) mtb - REG_MTB_BASE) + TRACE_BUFFER_SIZE_BYTES) & 0xFFFFFFF8; REG_MTB_MASTER = 0x80000000 + (TRACE_BUFFER_MAGNITUDE_PACKETS - 1); +#else + // Triple check that the MTB is off. Switching between debug and non-debug + // builds can leave it set over reset and wreak havok as a result. + REG_MTB_MASTER = 0x00000000 + 6; #endif // On power on start or external reset, set _ezero to the canary word. If it