Button to apply nDBANK #2996
it does not work, i give up for now time to install STM Cube :(
This commit is contained in:
parent
f39be3b69e
commit
7b44b5f5f3
|
@ -133,6 +133,22 @@ uintptr_t getFlashAddrSecondCopy() {
|
||||||
#define FLASH_OPTKEY1 (0x08192A3B)
|
#define FLASH_OPTKEY1 (0x08192A3B)
|
||||||
#define FLASH_OPTKEY2 (0x4C5D6E7F)
|
#define FLASH_OPTKEY2 (0x4C5D6E7F)
|
||||||
|
|
||||||
|
static void flash_wait_complete(void)
|
||||||
|
{
|
||||||
|
while ((FLASH_SR & FLASH_SR_BSY) == FLASH_SR_BSY)
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void stm32f7_flash_mass_erase_dual_block(void)
|
||||||
|
{
|
||||||
|
FLASH_CR |= FLASH_CR_MER1 | FLASH_CR_MER2;
|
||||||
|
FLASH_CR |= FLASH_CR_STRT;
|
||||||
|
flash_wait_complete();
|
||||||
|
FLASH_CR &= ~(FLASH_CR_MER1 | FLASH_CR_MER2);
|
||||||
|
}
|
||||||
|
|
||||||
|
// todo: at the moment this does not work :(
|
||||||
|
// https://github.com/rusefi/rusefi/issues/2996
|
||||||
void sys_dual_bank(void) {
|
void sys_dual_bank(void) {
|
||||||
uint32_t reg;
|
uint32_t reg;
|
||||||
|
|
||||||
|
@ -147,5 +163,9 @@ void sys_dual_bank(void) {
|
||||||
reg &= ~(FLASH_OPTCR_nDBANK);
|
reg &= ~(FLASH_OPTCR_nDBANK);
|
||||||
FLASH_OPTCR = reg;
|
FLASH_OPTCR = reg;
|
||||||
FLASH_OPTCR |= FLASH_OPTCR_STRT;
|
FLASH_OPTCR |= FLASH_OPTCR_STRT;
|
||||||
|
/*
|
||||||
|
* see https://github.com/danielinux/stm32f7-dualbank-tool/issues/1
|
||||||
|
stm32f7_flash_mass_erase_dual_block();
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue