Merge branch 'bugfix/disable_other_task_before_nmi_disabled' into 'master'

fix(freertos): disable other task before disable nmi

See merge request sdk/ESP8266_RTOS_SDK!1568
This commit is contained in:
Dong Heng
2020-11-25 14:36:22 +08:00

View File

@ -297,9 +297,10 @@ void IRAM_ATTR vPortETSIntrLock(void)
if (NMIIrqIsOn == 0) { if (NMIIrqIsOn == 0) {
uint32_t regval = REG_READ(NMI_INT_ENABLE_REG); uint32_t regval = REG_READ(NMI_INT_ENABLE_REG);
vPortEnterCritical();
REG_WRITE(NMI_INT_ENABLE_REG, 0); REG_WRITE(NMI_INT_ENABLE_REG, 0);
vPortEnterCritical();
if (!ESP_NMI_IS_CLOSED()) { if (!ESP_NMI_IS_CLOSED()) {
do { do {
REG_WRITE(INT_ENA_WDEV, WDEV_TSF0_REACH_INT); REG_WRITE(INT_ENA_WDEV, WDEV_TSF0_REACH_INT);
@ -322,9 +323,10 @@ void IRAM_ATTR vPortETSIntrUnlock(void)
REG_WRITE(INT_ENA_WDEV, WDEV_INTEREST_EVENT); REG_WRITE(INT_ENA_WDEV, WDEV_INTEREST_EVENT);
} }
vPortExitCritical();
REG_WRITE(NMI_INT_ENABLE_REG, regval); REG_WRITE(NMI_INT_ENABLE_REG, regval);
vPortExitCritical();
} }
} }