ulp: only enable relevant wakeup sources for ULP

Do not enable co-processor trap wakeup source when running ULP FSM, as this
could cause spurious wake-ups.
This commit is contained in:
Marius Vikhammer 2022-06-22 10:20:39 +08:00
parent a0e3d488da
commit 3c358dd074
3 changed files with 10 additions and 5 deletions

View File

@ -863,8 +863,13 @@ esp_err_t esp_sleep_enable_ulp_wakeup(void)
return ESP_ERR_INVALID_STATE;
#endif // CONFIG_ESP32_ULP_COPROC_ENABLED
#elif CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3
s_config.wakeup_triggers |= (RTC_ULP_TRIG_EN | RTC_COCPU_TRIG_EN | RTC_COCPU_TRAP_TRIG_EN);
#if CONFIG_ESP32S2_ULP_COPROC_RISCV || CONFIG_ESP32S3_ULP_COPROC_RISCV
s_config.wakeup_triggers |= (RTC_COCPU_TRIG_EN | RTC_COCPU_TRAP_TRIG_EN);
return ESP_OK;
#else // ULP_FSM
s_config.wakeup_triggers |= (RTC_ULP_TRIG_EN);
return ESP_OK;
#endif //ESP32S2_ULP_COPROC_RISCV || ESP32S3_ULP_COPROC_RISCV
#else
return ESP_ERR_NOT_SUPPORTED;
#endif

View File

@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-S2 |
| ----------------- | ----- | -------- |
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 |
| ----------------- | ----- | -------- | -------- |
# ULP Pulse Counting Example

View File

@ -8,7 +8,7 @@ import ttfw_idf
from tiny_test_fw import DUT
@ttfw_idf.idf_example_test(env_tag='deepsleep_temp_tag', target=['esp32s2', 'esp32s3'])
@ttfw_idf.idf_example_test(env_tag='Example_GENERIC', target=['esp32s2', 'esp32s3'])
def test_examples_ulp_riscv(env, extra_data): # type: (tiny_test_fw.Env.Env, None) -> None # pylint: disable=unused-argument
dut = env.get_dut('ulp_riscv', 'examples/system/ulp_riscv/gpio')
dut.start_app()