drivers: intc: esp32: fix non-IRAM mask usage in interrupt disable

Fix the non-IRAM interrupt disable routine to use non_iram_int_mask[cpu]
directly instead of its bitwise inverse. The previous implementation used
the wrong mask and could affect unrelated interrupts. This change ensures
that only intended non-IRAM interrupts are disabled and restored.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
This commit is contained in:
Sylvio Alves
2025-07-16 17:14:48 -03:00
committed by Anas Nashif
parent d55c550579
commit e794a86a94

View File

@@ -866,7 +866,7 @@ void IRAM_ATTR esp_intr_noniram_disable(void)
unsigned int key = irq_lock();
int oldint;
int cpu = esp_cpu_get_core_id();
int non_iram_ints = ~non_iram_int_mask[cpu];
int non_iram_ints = non_iram_int_mask[cpu];
if (non_iram_int_disabled_flag[cpu]) {
abort();