diff --git a/libraries/EEPROM/EEPROM.cpp b/libraries/EEPROM/EEPROM.cpp index a46638b6d..90bbf8ca5 100644 --- a/libraries/EEPROM/EEPROM.cpp +++ b/libraries/EEPROM/EEPROM.cpp @@ -71,11 +71,8 @@ void EEPROMClass::begin(size_t size) { _size = size; - noInterrupts(); - auto ret = spi_flash_read(_sector * SPI_FLASH_SEC_SIZE, reinterpret_cast(_data), _size); - interrupts(); - if (ret != SPI_FLASH_RESULT_OK) { - DEBUGV("EEPROMClass::begin spi_flash_read failed, %d\n", (int)ret); + if (!ESP.flashRead(_sector * SPI_FLASH_SEC_SIZE, reinterpret_cast(_data), _size)) { + DEBUGV("EEPROMClass::begin flash read failed\n"); } _dirty = false; //make sure dirty is cleared in case begin() is called 2nd+ time @@ -128,7 +125,6 @@ void EEPROMClass::write(int const address, uint8_t const value) { } bool EEPROMClass::commit() { - bool ret = false; if (!_size) return false; if(!_dirty) @@ -136,22 +132,15 @@ bool EEPROMClass::commit() { if(!_data) return false; - noInterrupts(); - auto flashret = spi_flash_erase_sector(_sector); - if (flashret == SPI_FLASH_RESULT_OK) { - flashret = spi_flash_write(_sector * SPI_FLASH_SEC_SIZE, reinterpret_cast(_data), _size); - if (flashret == SPI_FLASH_RESULT_OK) { + if (ESP.flashEraseSector(_sector)) { + if (ESP.flashWrite(_sector * SPI_FLASH_SEC_SIZE, reinterpret_cast(_data), _size)) { _dirty = false; - ret = true; + return true; } } - interrupts(); - if (flashret != SPI_FLASH_RESULT_OK) { - DEBUGV("EEPROMClass::commit failed, %d\n", (int)flashret); - } - - return ret; + DEBUGV("EEPROMClass::commit failed\n"); + return false; } uint8_t * EEPROMClass::getDataPtr() {