mirror of
https://github.com/espressif/esp-idf.git
synced 2026-09-22 13:01:16 +03: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
SDMMC Host Driver
SD Host side related components are:
sdmmcesp_driver_sdmmc(current component)esp_driver_sdspi
For relationship and dependency among these components, see SD Host Side Related Component Architecture.
esp_driver_sdmmc components holds SDMMC Host driver for ESP SDMMC peripheral, this driver provides APIs to help you:
- do SD transactions (under SD mode) via ESP SDMMC peripheral.
- tune ESP SDMMC hardware configurations, such as clock frequency, bus width, etc.
- ...
You can
- use this driver to implement
sdmmcprotocol interfaces - directly use
esp_driver_sdmmcAPIs
to communicate with SD slave devices under SD mode.