mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-08 04:02:27 +00:00

Previously, as DMA descriptors were processed, the task performing SDMMC transfer would get woken up and would refill the descriptors. This design didn't work correctly when higher priority tasks occupied the CPU for too long, resulting in SDMMC transfer timing out. This change moves DMA descriptor refilling into SDMMC ISR. Now the "DMA done" interrupt is delivered back to task context only when the entire transfer is completed. Closes https://github.com/espressif/esp-idf/issues/13934