|
|
@ -1396,7 +1396,6 @@ void kiss_dump_eeprom() { |
|
|
|
|
|
|
|
|
|
|
|
#if !HAS_EEPROM && MCU_VARIANT == MCU_NRF52 |
|
|
|
#if !HAS_EEPROM && MCU_VARIANT == MCU_NRF52 |
|
|
|
void eeprom_flush() { |
|
|
|
void eeprom_flush() { |
|
|
|
// sync file contents to flash
|
|
|
|
|
|
|
|
file.close(); |
|
|
|
file.close(); |
|
|
|
file.open(EEPROM_FILE, FILE_O_WRITE); |
|
|
|
file.open(EEPROM_FILE, FILE_O_WRITE); |
|
|
|
written_bytes = 0; |
|
|
|
written_bytes = 0; |
|
|
@ -1423,19 +1422,7 @@ void eeprom_update(int mapped_addr, uint8_t byte) { |
|
|
|
file.write(byte); |
|
|
|
file.write(byte); |
|
|
|
} |
|
|
|
} |
|
|
|
written_bytes++; |
|
|
|
written_bytes++; |
|
|
|
|
|
|
|
eeprom_flush(); |
|
|
|
if ((mapped_addr - eeprom_addr(0)) == ADDR_INFO_LOCK) { |
|
|
|
|
|
|
|
#if !HAS_EEPROM && MCU_VARIANT == MCU_NRF52 |
|
|
|
|
|
|
|
// have to do a flush because we're only writing 1 byte and it syncs after 4
|
|
|
|
|
|
|
|
eeprom_flush(); |
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (written_bytes >= 4) { |
|
|
|
|
|
|
|
file.close(); |
|
|
|
|
|
|
|
file.open(EEPROM_FILE, FILE_O_WRITE); |
|
|
|
|
|
|
|
written_bytes = 0; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|