mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-02 20:24:32 +02:00
ci: Fix for ETSTimers arm & disarm run from IRAM
UT
- For ESP32 | SPIRAM_MALLOC_ALWAYSINTERNAL=0 - Forced `esp_timer_create` to allocate resource from the internal memory - WiFi/BT coexistence will sometimes arm/disarm timers from an ISR where flash may be disabled. This can lead to a cache-based exception as the timer instance will be located in the PSRAM.
This commit is contained in:
@@ -110,7 +110,7 @@ esp_err_t esp_timer_create(const esp_timer_create_args_t* args,
|
|||||||
if (args == NULL || args->callback == NULL || out_handle == NULL) {
|
if (args == NULL || args->callback == NULL || out_handle == NULL) {
|
||||||
return ESP_ERR_INVALID_ARG;
|
return ESP_ERR_INVALID_ARG;
|
||||||
}
|
}
|
||||||
esp_timer_handle_t result = (esp_timer_handle_t) calloc(1, sizeof(*result));
|
esp_timer_handle_t result = (esp_timer_handle_t) heap_caps_calloc(1, sizeof(*result), MALLOC_CAP_8BIT | MALLOC_CAP_INTERNAL);
|
||||||
if (result == NULL) {
|
if (result == NULL) {
|
||||||
return ESP_ERR_NO_MEM;
|
return ESP_ERR_NO_MEM;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user