]> git.gag.com Git - fw/stlink/commitdiff
SNB is wider than three bits on STM32F4
authorSven Wegener <sven.wegener@stealer.net>
Tue, 21 Oct 2014 08:04:10 +0000 (10:04 +0200)
committerSven Wegener <sven.wegener@stealer.net>
Tue, 21 Oct 2014 14:33:12 +0000 (16:33 +0200)
The SNB part of the FLASH_CR register is four bits wide on F4 devices
and five bits wide on F4_HD devices. F4 devices have a reserved bit
alongside the sector number, so just increase the bitmask to cover all
five bits.

Currently flashing breaks, if flahing sector eight and above before
flashing lower sectors, because the highest bit is never unset.

Signed-off-by: Sven Wegener <sven.wegener@stealer.net>
src/stlink-common.c

index 22f3655ded28a5f72c26137c08247f7a6fafb96b..acc84169bacb9447f75d8f2959155459566b86f7 100644 (file)
@@ -89,7 +89,7 @@
 #define FLASH_F4_CR_LOCK 31
 #define FLASH_F4_CR_SER 1
 #define FLASH_F4_CR_SNB 3
-#define FLASH_F4_CR_SNB_MASK 0x38
+#define FLASH_F4_CR_SNB_MASK 0xf8
 #define FLASH_F4_SR_BSY 16
 
 #define L1_WRITE_BLOCK_SIZE 0x80