mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
ci(esp32c61): enable c61 generic target test
This commit is contained in:
parent
a82b8565b7
commit
4e095f4b9f
@ -11,7 +11,7 @@ extra_default_build_targets:
|
|||||||
- esp32c61
|
- esp32c61
|
||||||
|
|
||||||
bypass_check_test_targets:
|
bypass_check_test_targets:
|
||||||
- esp32c61
|
|
||||||
#
|
#
|
||||||
# These lines would
|
# These lines would
|
||||||
# - enable the README.md check for esp32c6. Don't forget to add the build jobs in .gitlab/ci/build.yml
|
# - enable the README.md check for esp32c6. Don't forget to add the build jobs in .gitlab/ci/build.yml
|
||||||
|
@ -19,6 +19,8 @@ def run_multiple_stages(dut: Dut, test_case_num: int, stages: int) -> None:
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
# TODO: [ESP32C61] IDF-9245, IDF-9247, IDF-10983
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='C61 has not supported deep sleep')
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
def test_app_update(dut: Dut) -> None:
|
def test_app_update(dut: Dut) -> None:
|
||||||
dut.run_all_single_board_cases(timeout=90)
|
dut.run_all_single_board_cases(timeout=90)
|
||||||
|
@ -13,6 +13,7 @@ CONFIGS = [
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32s2
|
@pytest.mark.esp32s2
|
||||||
@pytest.mark.esp32s3
|
@pytest.mark.esp32s3
|
||||||
@ -27,6 +28,7 @@ def test_gpio_filter(dut: IdfDut) -> None:
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32s2
|
@pytest.mark.esp32s2
|
||||||
@pytest.mark.esp32s3
|
@pytest.mark.esp32s3
|
||||||
|
@ -9,6 +9,10 @@
|
|||||||
components/esp_driver_spi/test_apps/master:
|
components/esp_driver_spi/test_apps/master:
|
||||||
disable:
|
disable:
|
||||||
- if: SOC_GPSPI_SUPPORTED != 1
|
- if: SOC_GPSPI_SUPPORTED != 1
|
||||||
|
disable_test:
|
||||||
|
- if: IDF_TARGET in ["esp32c61"]
|
||||||
|
temporary: true
|
||||||
|
reason: no multi-dev runner # TODO: [ESP32C61] IDF-10949
|
||||||
<<: *spi_depends_default
|
<<: *spi_depends_default
|
||||||
|
|
||||||
components/esp_driver_spi/test_apps/param:
|
components/esp_driver_spi/test_apps/param:
|
||||||
|
@ -5,6 +5,7 @@ import pytest
|
|||||||
|
|
||||||
# If `test_env` is define, should not run on generic runner
|
# If `test_env` is define, should not run on generic runner
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='test case fail') # TODO: [ESP32C61] IDF-10949
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize('config', ['defaults', 'release', 'freertos_compliance', 'freertos_flash',], indirect=True)
|
@pytest.mark.parametrize('config', ['defaults', 'release', 'freertos_compliance', 'freertos_flash',], indirect=True)
|
||||||
def test_master_single_dev(case_tester) -> None: # type: ignore
|
def test_master_single_dev(case_tester) -> None: # type: ignore
|
||||||
@ -26,8 +27,8 @@ def test_master_esp_flash(case_tester) -> None: # type: ignore
|
|||||||
|
|
||||||
|
|
||||||
# if `test_env` not defined, will run on `generic_multi_device` by default
|
# if `test_env` not defined, will run on `generic_multi_device` by default
|
||||||
# TODO: [ESP32P4] IDF-9517 [ESP32C5] IDF-10322
|
# TODO: [ESP32P4] IDF-9517 [ESP32C5] IDF-10322 [ESP32C61] IDF-10949
|
||||||
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5'], reason='no multi-dev runner')
|
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5', 'esp32c61'], reason='no multi-dev runner')
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
@pytest.mark.generic_multi_device
|
@pytest.mark.generic_multi_device
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
|
@ -16,8 +16,8 @@ def test_param_single_dev(case_tester) -> None: # type: ignore
|
|||||||
|
|
||||||
|
|
||||||
# if `test_env` not defined, will run on `generic_multi_device` by default
|
# if `test_env` not defined, will run on `generic_multi_device` by default
|
||||||
# TODO: [ESP32P4] IDF-8942 [ESP32C5] IDF-10322
|
# TODO: [ESP32P4] IDF-8942 [ESP32C5] IDF-10322 [ESP32C61] IDF-10949
|
||||||
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5'], reason='no multi-dev runner')
|
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5', 'esp32c61'], reason='no multi-dev runner')
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.generic_multi_device
|
@pytest.mark.generic_multi_device
|
||||||
|
@ -15,8 +15,8 @@ def test_slave_single_dev(case_tester) -> None: # type: ignore
|
|||||||
|
|
||||||
|
|
||||||
# if `test_env` not defined, will run on `generic_multi_device` by default
|
# if `test_env` not defined, will run on `generic_multi_device` by default
|
||||||
# TODO: [ESP32P4] IDF-9517 [ESP32C5] IDF-10322
|
# TODO: [ESP32P4] IDF-9517 [ESP32C5] IDF-10322 [ESP32C61] IDF-10949
|
||||||
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5'], reason='no multi-dev runner')
|
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5', 'esp32c61'], reason='no multi-dev runner')
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
@pytest.mark.generic_multi_device
|
@pytest.mark.generic_multi_device
|
||||||
@pytest.mark.parametrize('count, config', [(2, 'defaults'), (2, 'iram_safe')], indirect=True)
|
@pytest.mark.parametrize('count, config', [(2, 'defaults'), (2, 'iram_safe')], indirect=True)
|
||||||
|
@ -10,6 +10,7 @@ import pytest
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32p4
|
@pytest.mark.esp32p4
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
|
@ -9,6 +9,7 @@ from pytest_embedded import Dut
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32p4
|
@pytest.mark.esp32p4
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
|
@ -26,7 +26,7 @@ def test_rtc_no_xtal32k(dut: Dut) -> None:
|
|||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
# TODO: [ESP32P4] IDF-8973 [ESP32C5] IDF-10309
|
# TODO: [ESP32P4] IDF-8973 [ESP32C5] IDF-10309 [ESP32C61] IDF-9274 IDF-10984
|
||||||
@pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2', 'esp32p4', 'esp32c5'], reason='c6/h2/p4/c5 support TBD')
|
@pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2', 'esp32p4', 'esp32c5', 'esp32c61'], reason='support TBD')
|
||||||
def test_rtc_calib(case_tester: Any) -> None:
|
def test_rtc_calib(case_tester: Any) -> None:
|
||||||
case_tester.run_all_multi_stage_cases()
|
case_tester.run_all_multi_stage_cases()
|
||||||
|
@ -52,3 +52,7 @@ components/esp_lcd/test_apps/spi_lcd:
|
|||||||
- esp_driver_spi
|
- esp_driver_spi
|
||||||
disable:
|
disable:
|
||||||
- if: SOC_GPSPI_SUPPORTED != 1
|
- if: SOC_GPSPI_SUPPORTED != 1
|
||||||
|
disable_test:
|
||||||
|
- if: IDF_TARGET in ["esp32c61"]
|
||||||
|
temporary: true
|
||||||
|
reason: test failed # TODO: ESP32C61 IDF-10953
|
||||||
|
@ -5,6 +5,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='test case fail') # TODO: [ESP32C61] IDF-10953
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
|
@ -6,6 +6,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='not supported yet') # TODO: [ESP32C61] IDF-9250 IDF-10985
|
||||||
@pytest.mark.parametrize('config', [
|
@pytest.mark.parametrize('config', [
|
||||||
'default',
|
'default',
|
||||||
'slp_iram_opt',
|
'slp_iram_opt',
|
||||||
|
@ -99,3 +99,16 @@ def test_psram_esp32p4(dut: Dut) -> None:
|
|||||||
)
|
)
|
||||||
def test_psram_esp32c5(dut: Dut) -> None:
|
def test_psram_esp32c5(dut: Dut) -> None:
|
||||||
dut.run_all_single_board_cases()
|
dut.run_all_single_board_cases()
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.esp32c61
|
||||||
|
@pytest.mark.generic
|
||||||
|
@pytest.mark.parametrize(
|
||||||
|
'config',
|
||||||
|
[
|
||||||
|
'esp32c61_release',
|
||||||
|
],
|
||||||
|
indirect=True,
|
||||||
|
)
|
||||||
|
def test_psram_esp32c61(dut: Dut) -> None:
|
||||||
|
dut.run_all_single_board_cases()
|
||||||
|
@ -0,0 +1,7 @@
|
|||||||
|
CONFIG_IDF_TARGET="esp32c61"
|
||||||
|
|
||||||
|
CONFIG_COMPILER_OPTIMIZATION_SIZE=y
|
||||||
|
CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y
|
||||||
|
CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT=y
|
||||||
|
|
||||||
|
CONFIG_SPIRAM=y
|
@ -5,6 +5,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-9257 IDF10986
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
|
@ -9,6 +9,7 @@ from pytest_embedded import Dut
|
|||||||
@pytest.mark.esp32s3
|
@pytest.mark.esp32s3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32p4
|
@pytest.mark.esp32p4
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
|
@ -4,4 +4,4 @@ components/esp_security/test_apps/crypto_drivers:
|
|||||||
disable:
|
disable:
|
||||||
- if: IDF_TARGET in ["esp32c61"]
|
- if: IDF_TARGET in ["esp32c61"]
|
||||||
temporary: true
|
temporary: true
|
||||||
reason: Support for ESP32C6 is yet to be added.
|
reason: Support for ESP32C61 is yet to be added.
|
||||||
|
@ -5,6 +5,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='Support for ESP32C61 is yet to be added.') # TODO: [ESP32C61] IDF-10987
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
[
|
[
|
||||||
|
@ -5,6 +5,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='test case fail') # TODO: IDF-10954
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
[
|
[
|
||||||
|
@ -388,6 +388,7 @@ TEST_CASE("esp_timer for very short intervals", "[esp_timer]")
|
|||||||
vTaskDelay(3); // wait for the esp_timer task to delete all timers
|
vTaskDelay(3); // wait for the esp_timer task to delete all timers
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !CONFIG_IDF_TARGET_ESP32C61 // TODO: IDF-10955, test fail
|
||||||
TEST_CASE("esp_timer_get_time call takes less than 1us", "[esp_timer]")
|
TEST_CASE("esp_timer_get_time call takes less than 1us", "[esp_timer]")
|
||||||
{
|
{
|
||||||
int64_t begin = esp_timer_get_time();
|
int64_t begin = esp_timer_get_time();
|
||||||
@ -399,6 +400,7 @@ TEST_CASE("esp_timer_get_time call takes less than 1us", "[esp_timer]")
|
|||||||
int ns_per_call = (int)((end - begin) * 1000 / iter_count);
|
int ns_per_call = (int)((end - begin) * 1000 / iter_count);
|
||||||
TEST_PERFORMANCE_LESS_THAN(ESP_TIMER_GET_TIME_PER_CALL, "%dns", ns_per_call);
|
TEST_PERFORMANCE_LESS_THAN(ESP_TIMER_GET_TIME_PER_CALL, "%dns", ns_per_call);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static int64_t IRAM_ATTR __attribute__((noinline)) get_clock_diff(void)
|
static int64_t IRAM_ATTR __attribute__((noinline)) get_clock_diff(void)
|
||||||
{
|
{
|
||||||
|
@ -15,6 +15,7 @@ CONFIGS = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-10988
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize('config', CONFIGS, indirect=True)
|
@pytest.mark.parametrize('config', CONFIGS, indirect=True)
|
||||||
def test_freertos(dut: Dut) -> None:
|
def test_freertos(dut: Dut) -> None:
|
||||||
@ -22,6 +23,7 @@ def test_freertos(dut: Dut) -> None:
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-10988
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize('config', ['freertos_options'], indirect=True)
|
@pytest.mark.parametrize('config', ['freertos_options'], indirect=True)
|
||||||
def test_task_notify_too_high_index_fails(dut: Dut) -> None:
|
def test_task_notify_too_high_index_fails(dut: Dut) -> None:
|
||||||
@ -33,6 +35,7 @@ def test_task_notify_too_high_index_fails(dut: Dut) -> None:
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-10988
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize('config', ['freertos_options'], indirect=True)
|
@pytest.mark.parametrize('config', ['freertos_options'], indirect=True)
|
||||||
def test_task_notify_wait_too_high_index_fails(dut: Dut) -> None:
|
def test_task_notify_wait_too_high_index_fails(dut: Dut) -> None:
|
||||||
@ -44,6 +47,7 @@ def test_task_notify_wait_too_high_index_fails(dut: Dut) -> None:
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-10988
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize('config', ['default'], indirect=True)
|
@pytest.mark.parametrize('config', ['default'], indirect=True)
|
||||||
def test_port_must_assert_in_isr(dut: Dut) -> None:
|
def test_port_must_assert_in_isr(dut: Dut) -> None:
|
||||||
|
@ -6,6 +6,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-9858 IDF-10989
|
||||||
@pytest.mark.nightly_run
|
@pytest.mark.nightly_run
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
@ -39,6 +40,7 @@ def test_heap_poisoning_qemu(dut: Dut) -> None:
|
|||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-9858 IDF-10989
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
[
|
[
|
||||||
@ -101,6 +103,7 @@ def test_heap_trace_dump(dut: Dut) -> None:
|
|||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-9858 IDF-10989
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
[
|
[
|
||||||
|
@ -31,6 +31,7 @@ def validate_sbom(dut: Dut) -> None:
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [esp32c61] IDF-9284 IDF-10990
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
[
|
[
|
||||||
|
@ -23,7 +23,7 @@ components/spi_flash/test_apps/esp_flash_stress:
|
|||||||
|
|
||||||
components/spi_flash/test_apps/flash_encryption:
|
components/spi_flash/test_apps/flash_encryption:
|
||||||
disable_test:
|
disable_test:
|
||||||
- if: IDF_TARGET in ["esp32c2", "esp32s2", "esp32c6", "esp32h2", "esp32p4", "esp32c5"]
|
- if: IDF_TARGET in ["esp32c2", "esp32s2", "esp32c6", "esp32h2", "esp32p4", "esp32c5", "esp32c61"]
|
||||||
temporary: true
|
temporary: true
|
||||||
reason: No runners # IDF-5634
|
reason: No runners # IDF-5634
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
@pytest.mark.temp_skip_ci(targets=['esp32c5'], reason='not support yet') # TODO: [ESP32C5] IDF-8715, IDF-10313
|
@pytest.mark.temp_skip_ci(targets=['esp32c5', 'esp32c61'], reason='not support yet') # TODO: [ESP32C5] IDF-8715, IDF-10313, [ESP32C61] IDF-9314 IDF-10991
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
|
@ -4,7 +4,8 @@ import pytest
|
|||||||
from pytest_embedded import Dut
|
from pytest_embedded import Dut
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5'], reason='esp32p4, esp32c5 support TBD') # TODO: [ESP32P4] IDF-8985 [ESP32C5] IDF-8715, IDF-10313
|
# TODO: [ESP32P4] IDF-8985 [ESP32C5] IDF-8715, IDF-10313, [ESP32C61] IDF-9314 IDF-10991
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5', 'esp32c61'], reason='esp32p4, esp32c5 support TBD')
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
|
@ -12,6 +12,7 @@ from pytest_embedded_idf.unity_tester import CaseTester
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c2
|
@pytest.mark.esp32c2
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
def test_wpa_supplicant_ut(dut: Dut) -> None:
|
def test_wpa_supplicant_ut(dut: Dut) -> None:
|
||||||
dut.run_all_single_board_cases()
|
dut.run_all_single_board_cases()
|
||||||
|
@ -8,6 +8,7 @@ from pytest_embedded import Dut
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32s2
|
@pytest.mark.esp32s2
|
||||||
@pytest.mark.esp32s3
|
@pytest.mark.esp32s3
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
examples/security/flash_encryption:
|
examples/security/flash_encryption:
|
||||||
disable_test:
|
disable_test:
|
||||||
- if: IDF_TARGET in ["esp32s2", "esp32s3", "esp32c6", "esp32h2", "esp32c2", "esp32p4", "esp32c5"]
|
- if: IDF_TARGET in ["esp32s2", "esp32s3", "esp32c6", "esp32h2", "esp32c2", "esp32p4", "esp32c5", "esp32c61"]
|
||||||
temporary: true
|
temporary: true
|
||||||
reason: lack of runners
|
reason: lack of runners
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
@pytest.mark.temp_skip_ci(targets=['esp32c5'], reason='not support yet') # TODO: [ESP32C5] IDF-8704, IDF-10314
|
@pytest.mark.temp_skip_ci(targets=['esp32c5', 'esp32c61'], reason='not support yet') # TODO: [ESP32C5] IDF-10314 [ESP32C61] IDF-10977
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
|
@ -2,11 +2,15 @@
|
|||||||
|
|
||||||
examples/system/app_trace_basic:
|
examples/system/app_trace_basic:
|
||||||
disable:
|
disable:
|
||||||
- if: IDF_TARGET in ["esp32c6", "esp32h2", "esp32p4", "esp32c5"]
|
- if: IDF_TARGET in ["esp32c6", "esp32h2", "esp32p4", "esp32c5", "esp32c61"]
|
||||||
temporary: true
|
temporary: true
|
||||||
reason: target esp32c6, esp32h2, esp32p4, esp32c5 is not supported yet
|
reason: targets not supported yet, TODO[C61] IDF-9264 IDF-10992
|
||||||
|
|
||||||
examples/system/base_mac_address:
|
examples/system/base_mac_address:
|
||||||
|
disable_test:
|
||||||
|
- if: IDF_TARGET in ["esp32c61"]
|
||||||
|
temporary: true
|
||||||
|
reason: test failed # TODO: IDF-10956
|
||||||
depends_components:
|
depends_components:
|
||||||
- esp_hw_support
|
- esp_hw_support
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C61 | ESP32-S2 | ESP32-S3 |
|
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-S2 | ESP32-S3 |
|
||||||
| ----------------- | ----- | -------- | -------- | --------- | -------- | -------- |
|
| ----------------- | ----- | -------- | -------- | -------- | -------- |
|
||||||
|
|
||||||
# Application Level Tracing Example (Basic)
|
# Application Level Tracing Example (Basic)
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='test case fail') # TODO: IDF-10956
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
def test_base_mac_address(dut: Dut) -> None:
|
def test_base_mac_address(dut: Dut) -> None:
|
||||||
def get_hex_r(num_bytes: int) -> str:
|
def get_hex_r(num_bytes: int) -> str:
|
||||||
|
@ -50,6 +50,7 @@ def test_examples_efuse_linux(dut: Dut) -> None:
|
|||||||
@pytest.mark.esp32c2
|
@pytest.mark.esp32c2
|
||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32s2
|
@pytest.mark.esp32s2
|
||||||
@ -150,6 +151,7 @@ def test_examples_efuse_with_virt_flash_enc_aes_256(dut: Dut) -> None:
|
|||||||
@pytest.mark.esp32c2
|
@pytest.mark.esp32c2
|
||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32s2
|
@pytest.mark.esp32s2
|
||||||
@ -226,6 +228,7 @@ def test_examples_efuse_with_virt_flash_enc_pre_loaded(dut: Dut) -> None:
|
|||||||
@pytest.mark.esp32c2
|
@pytest.mark.esp32c2
|
||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32s2
|
@pytest.mark.esp32s2
|
||||||
@ -565,7 +568,7 @@ def test_examples_efuse_with_virt_secure_boot_v2_pre_loaded(dut: Dut) -> None:
|
|||||||
@pytest.mark.esp32c2
|
@pytest.mark.esp32c2
|
||||||
# TODO: [ESP32C5] IDF-10043
|
# TODO: [ESP32C5] IDF-10043
|
||||||
# @pytest.mark.esp32c5
|
# @pytest.mark.esp32c5
|
||||||
# TODO: [ESP32C5] IDF-10102
|
# TODO: [ESP32C61] IDF-10102
|
||||||
# @pytest.mark.esp32c61
|
# @pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@ -642,7 +645,7 @@ def test_examples_efuse_with_virt_secure_boot_v2_esp32xx(dut: Dut) -> None:
|
|||||||
@pytest.mark.esp32c2
|
@pytest.mark.esp32c2
|
||||||
# TODO: [ESP32C5] IDF-10043
|
# TODO: [ESP32C5] IDF-10043
|
||||||
# @pytest.mark.esp32c5
|
# @pytest.mark.esp32c5
|
||||||
# TODO: [ESP32C5] IDF-10102
|
# TODO: [ESP32C61] IDF-10102
|
||||||
# @pytest.mark.esp32c61
|
# @pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@ -953,6 +956,7 @@ def test_examples_efuse_with_virt_sb_v2_and_fe_qemu(dut: QemuDut) -> None:
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c2
|
@pytest.mark.esp32c2
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32s2
|
@pytest.mark.esp32s2
|
||||||
|
@ -28,6 +28,8 @@ ONE_SHOT_TIMER_PERIOD = 5000000
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
# TODO: [ESP32C61] IDF-10993
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='C61 has not supported light sleep')
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'config',
|
'config',
|
||||||
|
@ -8,6 +8,7 @@ from pytest_embedded import Dut
|
|||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='not supported light sleep') # TODO: [ESP32C61] IDF-9247 IDF-10993
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
def test_light_sleep(dut: Dut) -> None:
|
def test_light_sleep(dut: Dut) -> None:
|
||||||
|
|
||||||
|
@ -14,6 +14,7 @@ no_runner_tags:
|
|||||||
- esp32c3,sdcard_sdmode
|
- esp32c3,sdcard_sdmode
|
||||||
- esp32c5,jtag
|
- esp32c5,jtag
|
||||||
- esp32c6,jtag
|
- esp32c6,jtag
|
||||||
|
- esp32c61,jtag
|
||||||
- esp32h2,jtag
|
- esp32h2,jtag
|
||||||
- esp32p4,jtag
|
- esp32p4,jtag
|
||||||
- esp32s2,usb_host_flash_disk
|
- esp32s2,usb_host_flash_disk
|
||||||
|
@ -16,7 +16,7 @@ from idf_ci_utils import IDF_PATH
|
|||||||
from idf_ci_utils import idf_relpath
|
from idf_ci_utils import idf_relpath
|
||||||
from pytest_embedded.utils import to_list
|
from pytest_embedded.utils import to_list
|
||||||
|
|
||||||
SUPPORTED_TARGETS = ['esp32', 'esp32s2', 'esp32c3', 'esp32s3', 'esp32c2', 'esp32c6', 'esp32h2', 'esp32p4', 'esp32c5']
|
SUPPORTED_TARGETS = ['esp32', 'esp32s2', 'esp32c3', 'esp32s3', 'esp32c2', 'esp32c6', 'esp32h2', 'esp32p4', 'esp32c5', 'esp32c61']
|
||||||
PREVIEW_TARGETS: t.List[str] = [] # this PREVIEW_TARGETS excludes 'linux' target
|
PREVIEW_TARGETS: t.List[str] = [] # this PREVIEW_TARGETS excludes 'linux' target
|
||||||
DEFAULT_SDKCONFIG = 'default'
|
DEFAULT_SDKCONFIG = 'default'
|
||||||
DEFAULT_LOGDIR = 'pytest-embedded'
|
DEFAULT_LOGDIR = 'pytest-embedded'
|
||||||
@ -31,12 +31,12 @@ TARGET_MARKERS = {
|
|||||||
'esp32c6': 'support esp32c6 target',
|
'esp32c6': 'support esp32c6 target',
|
||||||
'esp32h2': 'support esp32h2 target',
|
'esp32h2': 'support esp32h2 target',
|
||||||
'esp32p4': 'support esp32p4 target',
|
'esp32p4': 'support esp32p4 target',
|
||||||
|
'esp32c61': 'support esp32c61 target',
|
||||||
'linux': 'support linux target',
|
'linux': 'support linux target',
|
||||||
}
|
}
|
||||||
|
|
||||||
SPECIAL_MARKERS = {
|
SPECIAL_MARKERS = {
|
||||||
'supported_targets': 'support all officially announced supported targets '
|
'supported_targets': 'support all officially announced supported targets, refer to `SUPPORTED_TARGETS`',
|
||||||
"('esp32', 'esp32s2', 'esp32c3', 'esp32s3', 'esp32c2', 'esp32c6', 'esp32p4', 'esp32c5')",
|
|
||||||
'preview_targets': "support all preview targets ('none')",
|
'preview_targets': "support all preview targets ('none')",
|
||||||
'all_targets': 'support all targets, including supported ones and preview ones',
|
'all_targets': 'support all targets, including supported ones and preview ones',
|
||||||
'temp_skip_ci': 'temp skip tests for specified targets only in ci',
|
'temp_skip_ci': 'temp skip tests for specified targets only in ci',
|
||||||
|
@ -29,6 +29,10 @@ tools/test_apps/system/eh_frame:
|
|||||||
reason: Only relevant for riscv targets
|
reason: Only relevant for riscv targets
|
||||||
|
|
||||||
tools/test_apps/system/esp_intr_dump:
|
tools/test_apps/system/esp_intr_dump:
|
||||||
|
disable_test:
|
||||||
|
- if: IDF_TARGET in ["esp32c61"]
|
||||||
|
temporary: true
|
||||||
|
reason: test failed # TODO: IDF-10957
|
||||||
|
|
||||||
tools/test_apps/system/g0_components:
|
tools/test_apps/system/g0_components:
|
||||||
enable:
|
enable:
|
||||||
|
@ -8,6 +8,7 @@ from pytest_embedded import Dut
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32p4
|
@pytest.mark.esp32p4
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@ -23,6 +24,7 @@ def test_eh_frame_wdt(dut: Dut) -> None:
|
|||||||
@pytest.mark.esp32c3
|
@pytest.mark.esp32c3
|
||||||
@pytest.mark.esp32c5
|
@pytest.mark.esp32c5
|
||||||
@pytest.mark.esp32c6
|
@pytest.mark.esp32c6
|
||||||
|
@pytest.mark.esp32c61
|
||||||
@pytest.mark.esp32h2
|
@pytest.mark.esp32h2
|
||||||
@pytest.mark.esp32p4
|
@pytest.mark.esp32p4
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
|
@ -48,6 +48,7 @@ def test_esp_intr_dump_shared(dut: Dut) -> None:
|
|||||||
|
|
||||||
# TODO: IDF-9512, Update the expected output of dual core RISC-V chips when the issue is resolved
|
# TODO: IDF-9512, Update the expected output of dual core RISC-V chips when the issue is resolved
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='test case fail') # TODO: IDF-10957
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
def test_esp_intr_dump_expected_output(dut: Dut) -> None:
|
def test_esp_intr_dump_expected_output(dut: Dut) -> None:
|
||||||
dut.expect_exact(PROMPT, timeout=30)
|
dut.expect_exact(PROMPT, timeout=30)
|
||||||
|
@ -584,6 +584,7 @@ def cache_error_log_check(dut: PanicTestDut) -> None:
|
|||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-9268 IDF-10994
|
||||||
@pytest.mark.parametrize('config', ['panic'], indirect=True)
|
@pytest.mark.parametrize('config', ['panic'], indirect=True)
|
||||||
def test_assert_cache_write_back_error_can_print_backtrace(
|
def test_assert_cache_write_back_error_can_print_backtrace(
|
||||||
dut: PanicTestDut, config: str, test_func_name: str
|
dut: PanicTestDut, config: str, test_func_name: str
|
||||||
@ -594,6 +595,7 @@ def test_assert_cache_write_back_error_can_print_backtrace(
|
|||||||
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32c61'], reason='support TBD') # TODO [ESP32C61] IDF-9268 IDF-10994
|
||||||
@pytest.mark.parametrize('config', ['panic'], indirect=True)
|
@pytest.mark.parametrize('config', ['panic'], indirect=True)
|
||||||
def test_assert_cache_write_back_error_can_print_backtrace2(
|
def test_assert_cache_write_back_error_can_print_backtrace2(
|
||||||
dut: PanicTestDut, config: str, test_func_name: str
|
dut: PanicTestDut, config: str, test_func_name: str
|
||||||
|
@ -13,7 +13,8 @@ def test_pure_ram_loadable_app(dut: IdfDut) -> None:
|
|||||||
dut.expect('Time since boot: 3 seconds...', timeout=10)
|
dut.expect('Time since boot: 3 seconds...', timeout=10)
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5'], reason='esp32p4, esp32c5 support TBD') # TODO: [ESP32P4] IDF-8994 [ESP32C5] IDF-8644, IDF-10315
|
# TODO: [ESP32P4] IDF-8994 [ESP32C5] IDF-8644, IDF-10315, [ESP32C61] IDF-10951
|
||||||
|
@pytest.mark.temp_skip_ci(targets=['esp32p4', 'esp32c5', 'esp32c61'], reason='support TBD')
|
||||||
@pytest.mark.supported_targets
|
@pytest.mark.supported_targets
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize('config', ['defaults',], indirect=True,)
|
@pytest.mark.parametrize('config', ['defaults',], indirect=True,)
|
||||||
|
Loading…
Reference in New Issue
Block a user