From a9f0f952555c1eceb7694be6158f2a578436bd99 Mon Sep 17 00:00:00 2001 From: "Earle F. Philhower, III" Date: Wed, 2 Jan 2019 19:09:10 -0800 Subject: [PATCH] Remove interrupt disable around flash operations All interrupt service routines are supposed to be in IRAM now, so there is no need to keep interrupts disabled while doing flash operations. Remove the IRQ disable/enable from the ESP.flash* methods. Related to #5568 --- cores/esp8266/Esp.cpp | 6 ------ 1 file changed, 6 deletions(-) diff --git a/cores/esp8266/Esp.cpp b/cores/esp8266/Esp.cpp index d95c94516e..23d61d33fa 100644 --- a/cores/esp8266/Esp.cpp +++ b/cores/esp8266/Esp.cpp @@ -572,9 +572,7 @@ bool EspClass::updateSketch(Stream& in, uint32_t size, bool restartOnFail, bool static const int FLASH_INT_MASK = ((B10 << 8) | B00111010); bool EspClass::flashEraseSector(uint32_t sector) { - ets_isr_mask(FLASH_INT_MASK); int rc = spi_flash_erase_sector(sector); - ets_isr_unmask(FLASH_INT_MASK); return rc == 0; } @@ -622,7 +620,6 @@ static int spi_flash_write_puya(uint32_t offset, uint32_t *data, size_t size) { #endif bool EspClass::flashWrite(uint32_t offset, uint32_t *data, size_t size) { - ets_isr_mask(FLASH_INT_MASK); int rc = 0; #if PUYA_SUPPORT if (getFlashChipVendorId() == SPI_FLASH_VENDOR_PUYA) { @@ -633,14 +630,11 @@ bool EspClass::flashWrite(uint32_t offset, uint32_t *data, size_t size) { { rc = spi_flash_write(offset, data, size); } - ets_isr_unmask(FLASH_INT_MASK); return rc == 0; } bool EspClass::flashRead(uint32_t offset, uint32_t *data, size_t size) { - ets_isr_mask(FLASH_INT_MASK); int rc = spi_flash_read(offset, (uint32_t*) data, size); - ets_isr_unmask(FLASH_INT_MASK); return rc == 0; }