Merge branch 'bugfix/clear_ulp_wake_intr_in_wake_source_enable_v5.0' into 'release/v5.0'

fix(esp_hw_support): clear all type ULP wakeup intr status at ulp wakeup source enable (backport v5.0)

See merge request espressif/esp-idf!27189
This commit is contained in:
Jiang Jiang Jian
2023-11-22 17:33:23 +08:00

View File

@ -1,5 +1,5 @@
/*
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
* SPDX-FileCopyrightText: 2015-2023 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
@ -467,14 +467,18 @@ static uint32_t IRAM_ATTR esp_sleep_start(uint32_t pd_flags)
#if CONFIG_ULP_COPROC_ENABLED
// Enable ULP wakeup
#if CONFIG_ULP_COPROC_TYPE_FSM
if (s_config.wakeup_triggers & RTC_ULP_TRIG_EN) {
#elif CONFIG_ULP_COPROC_TYPE_RISCV
if (s_config.wakeup_triggers & (RTC_COCPU_TRIG_EN | RTC_COCPU_TRAP_TRIG_EN)) {
#endif
#ifdef CONFIG_IDF_TARGET_ESP32
rtc_hal_ulp_wakeup_enable();
#else
rtc_hal_ulp_int_clear();
#endif
}
#endif
#endif // CONFIG_ULP_COPROC_ENABLED
misc_modules_sleep_prepare(deep_sleep);