gustavonihei opened a new pull request #3810: URL: https://github.com/apache/incubator-nuttx/pull/3810
## Summary This PR intends to the provide a fix to the unintended overwrite of a previously registered IRQ when it is in disabled state at the time of a new request. This scenario was found during the development of the SPI Slave driver for the ESP32-C3. For testing purposes, it was added interrupt support to the DMA driver. The SPI Slave driver behaves a bit different regarding the interrupt enable process. It first requests the IRQ, but does not enable the interrupts right away. Instead, it performs the remaining initialization, triggers the interrupt flag for TRANS_DONE and then finally enabled the interrupts with `up_enable_irq`. The found issue is that the DMA interrupt enabling was part of the remaining initialization, which overwrote the SPI Slave interrupt from the `g_cpuint_map`. ## Impact Just for ESP32-C3 boards. No impact to current upstream drivers. ## Testing DEBUGASSERT was previously being triggered when any interrupt was disabled during the request of a new one. This is now fixed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
