mirror of
https://github.com/espressif/esp-idf.git
synced 2026-10-01 18:50:34 +03:00
test(ci): re-enable ESP32-H4 in core system test apps
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
co-authored by
Cursor
parent
96333567e8
commit
8f6ea2a1ba
@@ -6,10 +6,6 @@ components/esp_hw_support/test_apps/cpu:
|
||||
- riscv
|
||||
- xtensa
|
||||
- soc
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h4"]
|
||||
temporary: true
|
||||
reason: cannot pass # TODO: IDF-15602
|
||||
|
||||
components/esp_hw_support/test_apps/esp_hw_support_unity_tests:
|
||||
depends_components:
|
||||
|
||||
@@ -28,7 +28,6 @@ def _run_non_recoverable_case(dut: IdfDut, test_name: str, expected_reason: str)
|
||||
],
|
||||
indirect=['config', 'target'],
|
||||
)
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15602
|
||||
def test_cpu(dut: IdfDut) -> None:
|
||||
dut.run_all_single_board_cases(group='!cpu_reset&!cpu_non_recoverable', timeout=120)
|
||||
|
||||
@@ -41,7 +40,6 @@ def test_cpu(dut: IdfDut) -> None:
|
||||
],
|
||||
indirect=['config', 'target'],
|
||||
)
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15602
|
||||
def test_cpu_reset(dut: IdfDut) -> None:
|
||||
dut.run_all_single_board_cases(group='cpu_reset', timeout=120)
|
||||
|
||||
@@ -54,7 +52,6 @@ def test_cpu_reset(dut: IdfDut) -> None:
|
||||
],
|
||||
indirect=['config', 'target'],
|
||||
)
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15602
|
||||
def test_cpu_non_recoverable(dut: IdfDut) -> None:
|
||||
expected_reason = 'Unhandled debug exception' if dut.target in {'esp32', 'esp32s2', 'esp32s3'} else 'Breakpoint'
|
||||
present_cases = {case.name for case in dut.test_menu}
|
||||
|
||||
@@ -10,10 +10,6 @@ components/esp_system/test_apps/esp_system_unity_tests:
|
||||
- if: (CONFIG_NAME == "psram" and SOC_SPIRAM_SUPPORTED != 1)
|
||||
- if: (CONFIG_NAME == "psram_with_pd_top" and (SOC_SPIRAM_SUPPORTED != 1 or SOC_PM_SUPPORT_TOP_PD != 1))
|
||||
- if: (CONFIG_NAME == "pd_vddsdio" and (SOC_LIGHT_SLEEP_SUPPORTED != 1))
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h4"]
|
||||
temporary: true
|
||||
reason: cannot pass # TODO: IDF-15604
|
||||
|
||||
components/esp_system/test_apps/linux_apis:
|
||||
enable:
|
||||
|
||||
@@ -83,7 +83,7 @@ TEST_CASE("Task WDT task timeout after peripheral powerdown lightsleep", "[task_
|
||||
|
||||
#if SOC_MWDT_SUPPORT_XTAL
|
||||
|
||||
#if CONFIG_IDF_TARGET_ESP32H2 || CONFIG_IDF_TARGET_ESP32H21
|
||||
#if CONFIG_IDF_TARGET_ESP32H2 || CONFIG_IDF_TARGET_ESP32H21 || CONFIG_IDF_TARGET_ESP32H4
|
||||
#define TEST_CPU_FREQUENCY_MHZ 48
|
||||
#else
|
||||
#define TEST_CPU_FREQUENCY_MHZ 40
|
||||
|
||||
-4
@@ -28,7 +28,6 @@ from pytest_embedded_idf.utils import soc_filtered_targets
|
||||
],
|
||||
indirect=['config', 'target'],
|
||||
)
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15604
|
||||
def test_esp_system(dut: Dut) -> None:
|
||||
# esp32p4 32MB PSRAM initialize in startup takes more than 30 sec
|
||||
dut.run_all_single_board_cases(timeout=60)
|
||||
@@ -88,7 +87,6 @@ def esp_reset_and_wait_ready_esp32c5_rev1(dut: Dut) -> None:
|
||||
[target for target in soc_filtered_targets('SOC_LIGHT_SLEEP_SUPPORTED == 1')],
|
||||
indirect=['target'],
|
||||
)
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15604
|
||||
def test_sleep_uart_handling(dut: Dut) -> None:
|
||||
"""Test UART handling modes during light sleep."""
|
||||
# Test FLUSH mode output
|
||||
@@ -132,7 +130,6 @@ def test_sleep_uart_handling(dut: Dut) -> None:
|
||||
[target for target in soc_filtered_targets('SOC_CPU_LOCKUP_DEBUG_SUPPORTED == 1')],
|
||||
indirect=['target'],
|
||||
)
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15604
|
||||
def test_cpu_lockup_trap_chain(dut: Dut) -> None:
|
||||
"""Trigger a PRO CPU lockup and verify the lockup output."""
|
||||
esp_reset_and_wait_ready(dut)
|
||||
@@ -163,7 +160,6 @@ def test_cpu_lockup_trap_chain(dut: Dut) -> None:
|
||||
@pytest.mark.generic
|
||||
@idf_parametrize('config', ['default'], indirect=['config'])
|
||||
@idf_parametrize('target', ['supported_targets'], indirect=['target'])
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15604
|
||||
def test_stack_smash_protection(dut: Dut) -> None:
|
||||
dut.expect_exact('Press ENTER to see the list of tests')
|
||||
dut.write('"stack smashing protection"')
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
# Documentation: .gitlab/ci/README.md#manifest-file-to-control-the-buildtest-apps
|
||||
|
||||
components/esp_timer/test_apps:
|
||||
disable_test:
|
||||
- if: IDF_TARGET == "esp32h4"
|
||||
temporary: true
|
||||
reason: cannot pass # TODO: IDF-15605
|
||||
depends_components:
|
||||
- esp_timer
|
||||
- esp_hal_timg
|
||||
|
||||
@@ -39,6 +39,10 @@
|
||||
#undef IDF_PERFORMANCE_MAX_ESP_TIMER_GET_TIME_PER_CALL
|
||||
#define IDF_PERFORMANCE_MAX_ESP_TIMER_GET_TIME_PER_CALL 1900
|
||||
|
||||
#elif CONFIG_IDF_TARGET_ESP32H4
|
||||
#undef IDF_PERFORMANCE_MAX_ESP_TIMER_GET_TIME_PER_CALL
|
||||
#define IDF_PERFORMANCE_MAX_ESP_TIMER_GET_TIME_PER_CALL 1900
|
||||
|
||||
#elif CONFIG_IDF_TARGET_ESP32S31
|
||||
#undef IDF_PERFORMANCE_MAX_ESP_TIMER_GET_TIME_PER_CALL
|
||||
#define IDF_PERFORMANCE_MAX_ESP_TIMER_GET_TIME_PER_CALL 1200
|
||||
|
||||
@@ -6,7 +6,6 @@ from pytest_embedded_idf.utils import idf_parametrize
|
||||
|
||||
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15605
|
||||
@idf_parametrize(
|
||||
'config,target',
|
||||
[
|
||||
|
||||
@@ -22,10 +22,6 @@ components/freertos/test_apps/freertos:
|
||||
temporary: true
|
||||
reason: target(s) not supported yet
|
||||
- if: CONFIG_NAME == "psram" and SOC_SPIRAM_SUPPORTED != 1
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h4"]
|
||||
temporary: true
|
||||
reason: cannot pass # TODO: IDF-15606
|
||||
depends_components:
|
||||
- freertos
|
||||
- esp_system # trigger on changes to idle / tick hooks, wdt, entry point to freertos code
|
||||
|
||||
@@ -26,14 +26,14 @@
|
||||
#endif
|
||||
|
||||
// Chip-Specific Data
|
||||
#if CONFIG_IDF_TARGET_ESP32P4 || CONFIG_IDF_TARGET_ESP32S31
|
||||
/* Spinlock performance on esp32p4/esp32s31 is slower. */
|
||||
#if CONFIG_IDF_TARGET_ESP32P4 || CONFIG_IDF_TARGET_ESP32S31 || CONFIG_IDF_TARGET_ESP32H4
|
||||
/* Spinlock performance on esp32p4/esp32s31/esp32h4 is slower. */
|
||||
#undef IDF_PERFORMANCE_MAX_FREERTOS_SPINLOCK_CYCLES_PER_OP
|
||||
#define IDF_PERFORMANCE_MAX_FREERTOS_SPINLOCK_CYCLES_PER_OP 400
|
||||
#undef IDF_PERFORMANCE_MAX_FREERTOS_SPINLOCK_CYCLES_PER_OP_UNICORE
|
||||
#define IDF_PERFORMANCE_MAX_FREERTOS_SPINLOCK_CYCLES_PER_OP_UNICORE 150
|
||||
|
||||
/* Solicited yields (portYIELD() or taskYIELD()) take longer on esp32p4/esp32s31. TODO: IDF-2809 */
|
||||
/* Solicited yields (portYIELD() or taskYIELD()) take longer on esp32p4/esp32s31/esp32h4. TODO: IDF-2809 */
|
||||
#undef IDF_PERFORMANCE_MAX_SCHEDULING_TIME
|
||||
#define IDF_PERFORMANCE_MAX_SCHEDULING_TIME 3200
|
||||
#endif
|
||||
|
||||
@@ -44,7 +44,6 @@ from pytest_embedded_idf.utils import idf_parametrize
|
||||
],
|
||||
indirect=['config', 'target'],
|
||||
)
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h4'], reason='cannot pass') # TODO: IDF-15606
|
||||
def test_freertos(dut: Dut) -> None:
|
||||
dut.run_all_single_board_cases()
|
||||
|
||||
|
||||
@@ -205,7 +205,7 @@ extern "C" {
|
||||
/* Espressif's custom CSR for the current privilege mode */
|
||||
#if CONFIG_IDF_TARGET_ESP32C6 || CONFIG_IDF_TARGET_ESP32H2
|
||||
#define CSR_PRV_MODE 0xC10
|
||||
#elif CONFIG_IDF_TARGET_ESP32C5 || CONFIG_IDF_TARGET_ESP32C61 || CONFIG_IDF_TARGET_ESP32P4 || CONFIG_IDF_TARGET_ESP32S31
|
||||
#else
|
||||
#define CSR_PRV_MODE 0x810
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user