wip: set correct BKER bit when erasing bank 2 on G4

pull/1457/head
gnarf 2025-03-03 13:34:36 +01:00 zatwierdzone przez GitHub
rodzic 44ae84aff6
commit 3d9378fa54
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: B5690EEEBB952194
1 zmienionych plików z 2 dodań i 2 usunięć

Wyświetl plik

@ -1130,9 +1130,9 @@ int32_t stlink_erase_flash_page(stlink_t *sl, stm32_addr_t flashaddr) {
// In this case we need to specify which bank to erase (sec 3.7.5 - BKER)
if(sl->flash_size > (128 * 1024) &&
((flashaddr - STM32_FLASH_BASE) >= sl->flash_size / 2)) {
val |= (1 << STM32_FLASH_Gx_CR_BKER); // erase bank 2
val |= (1 << STM32_FLASH_G4_CR_BKER); // erase bank 2
} else {
val &= ~(1 << STM32_FLASH_Gx_CR_BKER); // erase bank 1
val &= ~(1 << STM32_FLASH_G4_CR_BKER); // erase bank 1
}
val |= ((flash_page & 0x7FF) << 3) | (1 << FLASH_CR_PER);
stlink_write_debug32(sl, STM32_FLASH_Gx_CR, val);