diff --git a/components/app_update/test_apps/test_app_update/pytest_app_update_ut.py b/components/app_update/test_apps/test_app_update/pytest_app_update_ut.py index 6fe3bcc0de..e9d9633e33 100644 --- a/components/app_update/test_apps/test_app_update/pytest_app_update_ut.py +++ b/components/app_update/test_apps/test_app_update/pytest_app_update_ut.py @@ -24,7 +24,7 @@ def test_app_update(dut: Dut) -> None: @pytest.mark.supported_targets -# TODO: [ESP32C61] IDF-9245, IDF-9247, IDF-10983 +# TODO: [ESP32C61] IDF-9245, IDF-10983 @pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='C61 has not supported deep sleep') @pytest.mark.generic @pytest.mark.parametrize( diff --git a/components/esp_hw_support/port/esp32c61/private_include/pmu_bit_defs.h b/components/esp_hw_support/port/esp32c61/private_include/pmu_bit_defs.h index 686855458a..842b61fbe1 100644 --- a/components/esp_hw_support/port/esp32c61/private_include/pmu_bit_defs.h +++ b/components/esp_hw_support/port/esp32c61/private_include/pmu_bit_defs.h @@ -10,8 +10,6 @@ extern "C" { #endif -// TODO: IDF-9247 - #define PMU_EXT0_WAKEUP_EN BIT(0) #define PMU_EXT1_WAKEUP_EN BIT(1) #define PMU_GPIO_WAKEUP_EN BIT(2) diff --git a/components/esp_hw_support/sleep_system_peripheral.c b/components/esp_hw_support/sleep_system_peripheral.c index c931ecdcf0..bbec68730e 100644 --- a/components/esp_hw_support/sleep_system_peripheral.c +++ b/components/esp_hw_support/sleep_system_peripheral.c @@ -37,7 +37,7 @@ static __attribute__((unused)) esp_err_t sleep_sys_periph_hp_system_retention_in return ESP_OK; } -#if SOC_APM_SUPPORTED || CONFIG_IDF_TARGET_ESP32C61 +#if SOC_APM_SUPPORTED static __attribute__((unused)) esp_err_t sleep_sys_periph_tee_apm_retention_init(void *arg) { /* TBD for ESP32P4 IDF-10020. */ @@ -132,7 +132,7 @@ static __attribute__((unused)) esp_err_t sleep_sys_periph_retention_init(void *a err = sleep_sys_periph_l2_cache_retention_init(); if(err) goto error; #endif -#if SOC_APM_SUPPORTED || CONFIG_IDF_TARGET_ESP32C61 +#if SOC_APM_SUPPORTED err = sleep_sys_periph_tee_apm_retention_init(arg); if(err) goto error; #endif diff --git a/components/soc/esp32c61/include/soc/reg_base.h b/components/soc/esp32c61/include/soc/reg_base.h index 0dbd75c461..5fe48114a2 100644 --- a/components/soc/esp32c61/include/soc/reg_base.h +++ b/components/soc/esp32c61/include/soc/reg_base.h @@ -61,4 +61,3 @@ #define DR_REG_INTPRI_BASE 0x600C5000 #define DR_REG_CACHE_BASE 0x600C8000 #define DR_REG_CLINT_M_BASE 0x20000000 -#define DR_REG_TEE_BASE DR_REG_TEE_REG_BASE diff --git a/examples/system/esp_timer/main/esp_timer_example_main.c b/examples/system/esp_timer/main/esp_timer_example_main.c index e2c2d26a89..54183cb8a3 100644 --- a/examples/system/esp_timer/main/esp_timer_example_main.c +++ b/examples/system/esp_timer/main/esp_timer_example_main.c @@ -71,7 +71,8 @@ void app_main(void) int64_t t2 = esp_timer_get_time(); ESP_LOGI(TAG, "Woke up from light sleep, time since boot: %lld us", t2); - assert(llabs((t2 - t1) - 500000) < 1200); + // TODO: PM-232 + assert(((t2 - t1 - 500000) < 1000) && ((t2 - t1 - 500000) > -2000)); #endif /* Let the timer run for a little bit more */ diff --git a/examples/system/esp_timer/pytest_esp_timer.py b/examples/system/esp_timer/pytest_esp_timer.py index 595cecb7c9..98bdd1232c 100644 --- a/examples/system/esp_timer/pytest_esp_timer.py +++ b/examples/system/esp_timer/pytest_esp_timer.py @@ -81,7 +81,7 @@ def test_esp_timer(dut: Dut) -> None: logging.info('Enter sleep: {}, exit sleep: {}, slept: {}'.format( sleep_enter_time, sleep_exit_time, sleep_time)) - assert abs(sleep_time - LIGHT_SLEEP_TIME) < 1200 + assert -2000 < sleep_time - LIGHT_SLEEP_TIME < 1000 for i in range(5, 7): match = dut.expect(PERIODIC_TIMER_REGEX, timeout=2) diff --git a/examples/system/light_sleep/pytest_light_sleep.py b/examples/system/light_sleep/pytest_light_sleep.py index 3aade876e8..698138469e 100644 --- a/examples/system/light_sleep/pytest_light_sleep.py +++ b/examples/system/light_sleep/pytest_light_sleep.py @@ -62,5 +62,6 @@ def test_light_sleep(dut: Dut) -> None: logging.info('Went to sleep again') match = dut.expect(EXIT_SLEEP_REGEX) - assert match.group(1).decode('utf8') == 'timer' and int(match.group(3)) >= WAKEUP_INTERVAL_MS - 1 and int(match.group(3)) <= WAKEUP_INTERVAL_MS + 1 + # TODO: Need to support dynamically change retention overhead for chips which support pmu (PM-232) + assert match.group(1).decode('utf8') == 'timer' and int(match.group(3)) >= WAKEUP_INTERVAL_MS - 2 and int(match.group(3)) <= WAKEUP_INTERVAL_MS + 1 logging.info('Woke up from timer again') diff --git a/examples/wifi/.build-test-rules.yml b/examples/wifi/.build-test-rules.yml index 16229bb7ba..17f466aaee 100644 --- a/examples/wifi/.build-test-rules.yml +++ b/examples/wifi/.build-test-rules.yml @@ -57,12 +57,22 @@ examples/wifi/itwt: examples/wifi/power_save: <<: *wifi_depends_default disable: - - if: (SOC_WIFI_SUPPORTED != 1) + - if: SOC_WIFI_SUPPORTED != 1 + - if: IDF_TARGET in ["esp32c61"] + temporary: true + reason: PM-234 disable_test: - if: IDF_TARGET == "esp32c61" temporary: true reason: lack of runners depends_components: + - esp_wifi + - esp_phy + - esp_netif + - lwip + - esp_event + - esp_coex + - wpa_supplicant - esp_driver_uart examples/wifi/wifi_aware: diff --git a/examples/wifi/power_save/README.md b/examples/wifi/power_save/README.md index 473379d265..50df4b8e6e 100644 --- a/examples/wifi/power_save/README.md +++ b/examples/wifi/power_save/README.md @@ -1,5 +1,5 @@ -| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-S2 | ESP32-S3 | -| ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | -------- | +| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-S2 | ESP32-S3 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- | # Wifi Power Save Example