Merge branch 'fix/handle_shared_intr_v5.3' into 'release/v5.3'

Fix/handle shared intr (v5.3)

See merge request espressif/esp-idf!44073
This commit is contained in:
morris
2026-01-14 10:11:45 +08:00
38 changed files with 317 additions and 35 deletions
+12 -7
View File
@@ -354,15 +354,20 @@ esp_err_t sdio_slave_initialize(sdio_slave_config_t *config)
esp_err_t r;
intr_handle_t intr_handle = NULL;
const int flags = 0;
r = esp_intr_alloc(ETS_SLC0_INTR_SOURCE, flags, sdio_intr, NULL, &intr_handle);
if (r != ESP_OK) {
return r;
}
r = init_context(config);
if (r != ESP_OK) {
return r;
}
SDIO_SLAVE_CHECK(r == ESP_OK, "context initialization failed", r);
r = esp_intr_alloc_intrstatus(
ETS_SLC0_INTR_SOURCE,
flags,
(uint32_t)sdio_slave_hal_get_intr_status_reg(context.hal),
sdio_slave_ll_intr_status_mask,
sdio_intr,
NULL,
&intr_handle
);
SDIO_SLAVE_CHECK(r == ESP_OK, "interrupt allocation failed", r);
context.intr_handle = intr_handle;
r = sdio_slave_hw_init(config);