mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
Merge branch 'feature/esp32h2_target_test' into 'master'
esp32h2(ci): ESP32H2 enable target stage test See merge request espressif/esp-idf!22084
This commit is contained in:
commit
8ba96ab873
@ -34,6 +34,9 @@ assign_example_test:
|
||||
- job: build_examples_cmake_esp32c6
|
||||
artifacts: false
|
||||
optional: true
|
||||
- job: build_examples_cmake_esp32h2
|
||||
artifacts: false
|
||||
optional: true
|
||||
- job: build_examples_cmake_esp32s3
|
||||
artifacts: false
|
||||
optional: true
|
||||
@ -61,6 +64,9 @@ assign_custom_test:
|
||||
- job: build_test_apps_esp32c6
|
||||
artifacts: false
|
||||
optional: true
|
||||
- job: build_test_apps_esp32h2
|
||||
artifacts: false
|
||||
optional: true
|
||||
- job: build_test_apps_esp32s3
|
||||
artifacts: false
|
||||
optional: true
|
||||
@ -83,6 +89,8 @@ assign_unit_test:
|
||||
optional: true
|
||||
- job: build_esp_idf_tests_cmake_esp32c6
|
||||
optional: true
|
||||
- job: build_esp_idf_tests_cmake_esp32h2
|
||||
optional: true
|
||||
- job: build_esp_idf_tests_cmake_esp32s3
|
||||
optional: true
|
||||
variables:
|
||||
|
@ -10,8 +10,8 @@ extra_default_build_targets:
|
||||
- esp32c6
|
||||
- esp32h2
|
||||
|
||||
bypass_check_test_targets:
|
||||
- esp32h2
|
||||
# bypass_check_test_targets:
|
||||
# - esp32h2
|
||||
# - esp32c6
|
||||
#
|
||||
# These lines would
|
||||
|
@ -2085,6 +2085,21 @@
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-target_test-adc
|
||||
|
||||
.rules:test:component_ut-esp32h2:
|
||||
rules:
|
||||
- <<: *if-revert-branch
|
||||
when: never
|
||||
- <<: *if-protected
|
||||
- <<: *if-label-build-only
|
||||
when: never
|
||||
- <<: *if-label-component_ut
|
||||
- <<: *if-label-component_ut_esp32h2
|
||||
- <<: *if-label-target_test
|
||||
- <<: *if-label-unit_test
|
||||
- <<: *if-label-unit_test_esp32h2
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-component_ut
|
||||
|
||||
.rules:test:component_ut-esp32h4-i154:
|
||||
rules:
|
||||
- <<: *if-revert-branch
|
||||
@ -2271,6 +2286,19 @@
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-custom_test
|
||||
|
||||
.rules:test:custom_test-esp32h2:
|
||||
rules:
|
||||
- <<: *if-revert-branch
|
||||
when: never
|
||||
- <<: *if-protected
|
||||
- <<: *if-label-build-only
|
||||
when: never
|
||||
- <<: *if-label-custom_test
|
||||
- <<: *if-label-custom_test_esp32h2
|
||||
- <<: *if-label-target_test
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-custom_test
|
||||
|
||||
.rules:test:custom_test-esp32s2:
|
||||
rules:
|
||||
- <<: *if-revert-branch
|
||||
@ -2524,6 +2552,21 @@
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-target_test-adc
|
||||
|
||||
.rules:test:example_test-esp32h2:
|
||||
rules:
|
||||
- <<: *if-revert-branch
|
||||
when: never
|
||||
- <<: *if-protected
|
||||
- <<: *if-label-build-only
|
||||
when: never
|
||||
- <<: *if-label-example_test
|
||||
- <<: *if-label-example_test_esp32h2
|
||||
- <<: *if-label-target_test
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-build-example_test
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-example_test
|
||||
|
||||
.rules:test:example_test-esp32s2:
|
||||
rules:
|
||||
- <<: *if-revert-branch
|
||||
@ -2781,6 +2824,19 @@
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-unit_test
|
||||
|
||||
.rules:test:unit_test-esp32h2:
|
||||
rules:
|
||||
- <<: *if-revert-branch
|
||||
when: never
|
||||
- <<: *if-protected
|
||||
- <<: *if-label-build-only
|
||||
when: never
|
||||
- <<: *if-label-target_test
|
||||
- <<: *if-label-unit_test
|
||||
- <<: *if-label-unit_test_esp32h2
|
||||
- <<: *if-dev-push
|
||||
changes: *patterns-unit_test
|
||||
|
||||
.rules:test:unit_test-esp32s2:
|
||||
rules:
|
||||
- <<: *if-revert-branch
|
||||
|
@ -157,6 +157,14 @@ example_test_pytest_esp32c6_generic:
|
||||
- build_pytest_examples_esp32c6
|
||||
tags: [ esp32c6, generic ]
|
||||
|
||||
example_test_pytest_esp32h2_generic:
|
||||
extends:
|
||||
- .pytest_examples_dir_template
|
||||
- .rules:test:example_test-esp32h2
|
||||
needs:
|
||||
- build_pytest_examples_esp32h2
|
||||
tags: [ esp32h2, generic ]
|
||||
|
||||
example_test_pytest_esp32_ethernet_ota:
|
||||
extends:
|
||||
- .pytest_examples_dir_template
|
||||
@ -775,6 +783,15 @@ component_ut_pytest_esp32c6_generic:
|
||||
tags: [ esp32c6, generic ]
|
||||
parallel: 2
|
||||
|
||||
component_ut_pytest_esp32h2_generic:
|
||||
extends:
|
||||
- .pytest_components_dir_template
|
||||
- .rules:test:component_ut-esp32h2
|
||||
needs:
|
||||
- build_pytest_components_esp32h2
|
||||
tags: [ esp32h2, generic ]
|
||||
parallel: 2
|
||||
|
||||
component_ut_pytest_esp32c6_generic_multi_device:
|
||||
extends:
|
||||
- .pytest_components_dir_template
|
||||
@ -887,6 +904,14 @@ test_app_test_pytest_esp32c6_generic:
|
||||
- build_pytest_test_apps_esp32c6
|
||||
tags: [ esp32c6, generic ]
|
||||
|
||||
test_app_test_pytest_esp32h2_generic:
|
||||
extends:
|
||||
- .pytest_test_apps_dir_template
|
||||
- .rules:test:custom_test-esp32h2
|
||||
needs:
|
||||
- build_pytest_test_apps_esp32h2
|
||||
tags: [ esp32h2, generic ]
|
||||
|
||||
test_app_test_pytest_esp32s3_mspi_f8r8:
|
||||
extends:
|
||||
- .pytest_test_apps_dir_template
|
||||
@ -995,6 +1020,11 @@ test_weekend_mqtt:
|
||||
- .example_test_template
|
||||
- .rules:test:example_test-esp32c6
|
||||
|
||||
.example_test_esp32h2_template:
|
||||
extends:
|
||||
- .example_test_template
|
||||
- .rules:test:example_test-esp32h2
|
||||
|
||||
.example_test_esp32s3_template:
|
||||
extends:
|
||||
- .example_test_template
|
||||
@ -1076,6 +1106,12 @@ example_test_C6_GENERIC:
|
||||
- ESP32C6
|
||||
- Example_GENERIC
|
||||
|
||||
example_test_H2_GENERIC:
|
||||
extends: .example_test_esp32h2_template
|
||||
tags:
|
||||
- ESP32H2
|
||||
- Example_GENERIC
|
||||
|
||||
.test_app_template:
|
||||
extends: .target_test_job_template
|
||||
needs:
|
||||
@ -1110,6 +1146,11 @@ example_test_C6_GENERIC:
|
||||
- .test_app_template
|
||||
- .rules:test:custom_test-esp32c6
|
||||
|
||||
.test_app_esp32h2_template:
|
||||
extends:
|
||||
- .test_app_template
|
||||
- .rules:test:custom_test-esp32h2
|
||||
|
||||
.test_app_esp32s3_template:
|
||||
extends:
|
||||
- .test_app_template
|
||||
@ -1154,6 +1195,11 @@ example_test_C6_GENERIC:
|
||||
- .unit_test_template
|
||||
- .rules:test:unit_test-esp32c6
|
||||
|
||||
.unit_test_esp32h2_template:
|
||||
extends:
|
||||
- .unit_test_template
|
||||
- .rules:test:unit_test-esp32h2
|
||||
|
||||
UT_001:
|
||||
extends: .unit_test_esp32_template
|
||||
parallel: 16
|
||||
@ -1303,6 +1349,13 @@ UT_C6:
|
||||
- ESP32C6_IDF
|
||||
- UT_T1_1
|
||||
|
||||
UT_H2:
|
||||
extends: .unit_test_esp32h2_template
|
||||
parallel: 5
|
||||
tags:
|
||||
- ESP32H2_IDF
|
||||
- UT_T1_1
|
||||
|
||||
UT_S3:
|
||||
extends: .unit_test_esp32s3_template
|
||||
parallel: 9
|
||||
|
@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: Unlicense OR CC0-1.0
|
||||
import re
|
||||
|
||||
@ -19,7 +19,7 @@ def run_multiple_stages(dut: Dut, test_case_num: int, stages: int) -> None:
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2'], reason='c6/h2 support TBD')
|
||||
@pytest.mark.generic
|
||||
def test_app_update(dut: Dut) -> None:
|
||||
extra_data = dut.parse_test_menu()
|
||||
|
@ -16,6 +16,13 @@ components/driver/test_apps/i2s_test_apps:
|
||||
disable:
|
||||
- if: SOC_I2S_SUPPORTED != 1
|
||||
|
||||
components/driver/test_apps/i2s_test_apps/i2s:
|
||||
disable:
|
||||
- if: SOC_I2S_SUPPORTED != 1
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: Cannot pass test, see IDF-6811
|
||||
components/driver/test_apps/i2s_test_apps/i2s_tdm:
|
||||
disable:
|
||||
- if: SOC_I2S_SUPPORTS_TDM != 1
|
||||
@ -27,6 +34,10 @@ components/driver/test_apps/i2s_test_apps/legacy_i2s_adc_dac:
|
||||
components/driver/test_apps/i2s_test_apps/legacy_i2s_driver:
|
||||
disable:
|
||||
- if: SOC_I2S_SUPPORTED != 1
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: cannot pass test IDF-6811
|
||||
|
||||
components/driver/test_apps/ledc:
|
||||
disable:
|
||||
@ -39,10 +50,18 @@ components/driver/test_apps/legacy_adc_driver:
|
||||
components/driver/test_apps/legacy_mcpwm_driver:
|
||||
disable:
|
||||
- if: SOC_MCPWM_SUPPORTED != 1
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: cannot pass test, IDF-6812
|
||||
|
||||
components/driver/test_apps/legacy_pcnt_driver:
|
||||
disable:
|
||||
- if: SOC_PCNT_SUPPORTED != 1
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: cannot pass test IDF-6814
|
||||
|
||||
components/driver/test_apps/legacy_rmt_driver:
|
||||
disable:
|
||||
@ -59,6 +78,10 @@ components/driver/test_apps/legacy_timer_driver:
|
||||
components/driver/test_apps/mcpwm:
|
||||
disable:
|
||||
- if: SOC_MCPWM_SUPPORTED != 1
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: cannot pass test, IDF-6812
|
||||
|
||||
components/driver/test_apps/pulse_cnt:
|
||||
disable:
|
||||
@ -67,6 +90,10 @@ components/driver/test_apps/pulse_cnt:
|
||||
components/driver/test_apps/rmt:
|
||||
disable:
|
||||
- if: SOC_RMT_SUPPORTED != 1
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: cannot pass test, IDF-6810
|
||||
|
||||
components/driver/test_apps/rs485:
|
||||
disable_test:
|
||||
|
@ -791,6 +791,7 @@ TEST_CASE("GPIO_drive_capability_test", "[gpio][ignore]")
|
||||
prompt_to_continue("If this test finishes");
|
||||
}
|
||||
|
||||
#if !CONFIG_IDF_TARGET_ESP32H2 // IDF-6845
|
||||
#if SOC_USB_SERIAL_JTAG_SUPPORTED
|
||||
TEST_CASE("GPIO_input_and_output_of_USB_pins_test", "[gpio]")
|
||||
{
|
||||
@ -843,6 +844,7 @@ TEST_CASE("GPIO_USB_DP_pin_pullup_disable_test", "[gpio]")
|
||||
TEST_ASSERT_EQUAL_INT(0, gpio_get_level(USB_DP_GPIO_NUM));
|
||||
}
|
||||
#endif //SOC_USB_SERIAL_JTAG_SUPPORTED
|
||||
#endif
|
||||
|
||||
#if !TEMPORARY_DISABLED_FOR_TARGETS(ESP32H2) // TODO: IDF-6267 Remove when light sleep is supported
|
||||
// Ignored in CI because it needs manually connect TEST_GPIO_INPUT_LEVEL_LOW_PIN to 3.3v to wake up from light sleep
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
@ -10,7 +10,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6811
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -10,7 +10,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6811
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -443,6 +443,7 @@ static void frequency_set_get(ledc_mode_t speed_mode, ledc_timer_t timer, uint32
|
||||
{
|
||||
int real_freq;
|
||||
TEST_ESP_OK(ledc_set_freq(speed_mode, timer, desired_freq));
|
||||
vTaskDelay(10 / portTICK_PERIOD_MS);
|
||||
real_freq = wave_count(1000);
|
||||
TEST_ASSERT_INT16_WITHIN(error, theoretical_freq, real_freq);
|
||||
TEST_ASSERT_EQUAL_INT32(theoretical_freq, ledc_get_freq(speed_mode, timer));
|
||||
|
@ -8,7 +8,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6812
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -9,7 +9,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32s2
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6814
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -8,7 +8,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 # IDF-6812
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -10,7 +10,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6810
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -2,6 +2,6 @@
|
||||
|
||||
components/efuse/test_apps:
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32s2", "esp32s3"]
|
||||
- if: IDF_TARGET in ["esp32s2", "esp32s3", "esp32h2"]
|
||||
temporary: true
|
||||
reason: eFuse for S2 and S3 is similar to the C3 chip, so we only test for C3.
|
||||
reason: eFuse for S2 and S3 is similar to the C3 chip, so we only test for C3. H2 fails IDF-6897
|
||||
|
@ -11,7 +11,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32c2
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6897
|
||||
@pytest.mark.generic
|
||||
def test_efuse(dut: Dut) -> None:
|
||||
dut.run_all_single_board_cases()
|
||||
|
@ -20,6 +20,11 @@ components/esp_hw_support/test_apps/rtc_clk:
|
||||
temporary: true
|
||||
reason: Unsupported on C6 for now. TODO IDF-5645
|
||||
|
||||
components/esp_hw_support/test_apps/security_support/esp_hw_support_unity_tests:
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: H2 fails IDF-6898
|
||||
components/heap/host_test/host_test_linux:
|
||||
enable:
|
||||
- if: IDF_TARGET == "linux"
|
||||
|
@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
import pytest
|
||||
|
@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
from typing import Any
|
||||
@ -33,6 +33,6 @@ def test_rtc_no_xtal32k(dut: Dut) -> None:
|
||||
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2'], reason='c6/h2 support TBD')
|
||||
def test_rtc_calib(case_tester: Any) -> None:
|
||||
case_tester.run_all_multi_stage_cases()
|
||||
|
@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
import pytest
|
||||
@ -9,8 +9,8 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
[
|
||||
pytest.param('default', marks=[pytest.mark.supported_targets]),
|
||||
pytest.param('release', marks=[pytest.mark.supported_targets]),
|
||||
pytest.param('default', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='test failed IDF-6898')]),
|
||||
pytest.param('release', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='test failed IDF-6898')]),
|
||||
],
|
||||
indirect=True,
|
||||
)
|
||||
|
@ -5,9 +5,9 @@ import pytest
|
||||
from pytest_embedded import Dut
|
||||
|
||||
CONFIGS = [
|
||||
pytest.param('default', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')]),
|
||||
pytest.param('limits', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')]),
|
||||
pytest.param('options', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')]),
|
||||
pytest.param('default', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2'], reason='c6/h2 support TBD')]),
|
||||
pytest.param('limits', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2'], reason='c6/h2 support TBD')]),
|
||||
pytest.param('options', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2'], reason='c6/h2 support TBD')]),
|
||||
]
|
||||
|
||||
|
||||
|
@ -101,7 +101,7 @@ menu "ESP System Settings"
|
||||
default y if IDF_TARGET_ESP32S3
|
||||
default y if IDF_TARGET_ESP32H4
|
||||
default y if IDF_TARGET_ESP32C6
|
||||
default y if IDF_TARGET_ESP32H2
|
||||
default n if IDF_TARGET_ESP32H2 # IDF-5667 & IDF-6847
|
||||
depends on !IDF_TARGET_ESP32C2
|
||||
|
||||
config ESP_SYSTEM_ALLOW_RTC_FAST_MEM_AS_HEAP
|
||||
|
@ -38,6 +38,7 @@ static void test_delay_task(void *p)
|
||||
vTaskDelete(NULL);
|
||||
}
|
||||
|
||||
#if !CONFIG_IDF_TARGET_ESP32H2 // IDF-6783
|
||||
TEST_CASE("esp_rom_delay_us produces correct delay on CPUs", "[delay]")
|
||||
{
|
||||
int delay_ms = 50;
|
||||
@ -60,6 +61,7 @@ TEST_CASE("esp_rom_delay_us produces correct delay on CPUs", "[delay]")
|
||||
ref_clock_deinit();
|
||||
vSemaphoreDelete(args.done);
|
||||
}
|
||||
#endif
|
||||
|
||||
TEST_CASE("vTaskDelay produces correct delay on CPUs", "[delay]")
|
||||
{
|
||||
|
@ -70,7 +70,7 @@ TEST_CASE("reset reason ESP_RST_POWERON", "[reset][ignore]")
|
||||
}
|
||||
|
||||
|
||||
#if !TEMPORARY_DISABLED_FOR_TARGETS(ESP32C2)
|
||||
#if !TEMPORARY_DISABLED_FOR_TARGETS(ESP32C2, ESP32H2)
|
||||
//IDF-5059
|
||||
static __NOINIT_ATTR uint32_t s_noinit_val;
|
||||
static RTC_NOINIT_ATTR uint32_t s_rtc_noinit_val;
|
||||
|
@ -5,8 +5,8 @@ import pytest
|
||||
from pytest_embedded import Dut
|
||||
|
||||
CONFIGS = [
|
||||
pytest.param('general', marks=[pytest.mark.supported_targets]),
|
||||
pytest.param('release', marks=[pytest.mark.supported_targets]),
|
||||
pytest.param('general', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='h2 support TBD')]),
|
||||
pytest.param('release', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='h2 support TBD')]),
|
||||
pytest.param('single_core', marks=[pytest.mark.esp32]),
|
||||
pytest.param('freertos_compliance', marks=[pytest.mark.esp32]),
|
||||
pytest.param('isr_dispatch_esp32', marks=[pytest.mark.esp32]),
|
||||
|
@ -5,8 +5,12 @@ import pytest
|
||||
from pytest_embedded import Dut
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c2'], reason='esp32c2 are using xtal_26mhz')
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32s2
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c6
|
||||
# @pytest.mark.esp32c2 # esp32c2 are using xtal_26mhz
|
||||
@pytest.mark.generic
|
||||
def test_wifi_unit_test(dut: Dut) -> None:
|
||||
dut.expect_exact('Press ENTER to see the list of tests')
|
||||
|
@ -5,12 +5,12 @@ import pytest
|
||||
from pytest_embedded import Dut
|
||||
|
||||
CONFIGS = [
|
||||
pytest.param('default', marks=[pytest.mark.supported_targets]),
|
||||
pytest.param('freertos_options', marks=[pytest.mark.supported_targets]),
|
||||
pytest.param('default', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='test failed')]),
|
||||
pytest.param('freertos_options', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='test failed')]),
|
||||
pytest.param('psram', marks=[pytest.mark.esp32]),
|
||||
pytest.param('release', marks=[pytest.mark.supported_targets]),
|
||||
pytest.param('single_core', marks=[pytest.mark.esp32]),
|
||||
pytest.param('smp', marks=[pytest.mark.supported_targets]),
|
||||
pytest.param('smp', marks=[pytest.mark.supported_targets, pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='test failed')]),
|
||||
]
|
||||
|
||||
|
||||
|
@ -7,6 +7,7 @@ from pytest_embedded import Dut
|
||||
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='test failed, IDF-6880')
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
[
|
||||
|
@ -35,6 +35,8 @@
|
||||
#define SERVER_ADDRESS "localhost"
|
||||
#define SERVER_PORT "4433"
|
||||
|
||||
#if !TEMPORARY_DISABLED_FOR_TARGETS(ESP32H2) // IDF-6847
|
||||
|
||||
extern const uint8_t server_cert_chain_pem_start[] asm("_binary_server_cert_chain_pem_start");
|
||||
extern const uint8_t server_cert_chain_pem_end[] asm("_binary_server_cert_chain_pem_end");
|
||||
|
||||
@ -485,3 +487,5 @@ TEST_CASE("custom certificate bundle init API - bound checking", "[mbedtls]")
|
||||
|
||||
esp_crt_bundle_detach(NULL);
|
||||
}
|
||||
|
||||
#endif // !TEMPORARY_DISABLED_FOR_TARGETS(ESP32H2)
|
||||
|
@ -41,6 +41,8 @@
|
||||
#include "esp32c2/rtc.h"
|
||||
#elif CONFIG_IDF_TARGET_ESP32C6
|
||||
#include "esp32c6/rtc.h"
|
||||
#elif CONFIG_IDF_TARGET_ESP32H2
|
||||
#include "esp32h2/rtc.h"
|
||||
#endif
|
||||
|
||||
#if portNUM_PROCESSORS == 2
|
||||
|
@ -6,7 +6,7 @@ from pytest_embedded import Dut
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2'], reason='c6/h2 support TBD')
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -141,6 +141,7 @@ static void deinit(int uart_fd, int socket_fd)
|
||||
close(socket_fd);
|
||||
}
|
||||
|
||||
#if !CONFIG_IDF_TARGET_ESP32H2 // IDF-6782
|
||||
TEST_CASE("UART can do select()", "[vfs]")
|
||||
{
|
||||
int uart_fd;
|
||||
@ -258,6 +259,7 @@ TEST_CASE("UART can do poll()", "[vfs]")
|
||||
|
||||
deinit(uart_fd, socket_fd);
|
||||
}
|
||||
#endif
|
||||
|
||||
TEST_CASE("socket can do select()", "[vfs]")
|
||||
{
|
||||
@ -442,6 +444,7 @@ static void inline start_select_task(test_select_task_param_t *param)
|
||||
xTaskCreate(select_task, "select_task", 4*1024, (void *) param, 5, NULL);
|
||||
}
|
||||
|
||||
#if !CONFIG_IDF_TARGET_ESP32H2 // IDF-6782
|
||||
TEST_CASE("concurrent selects work", "[vfs]")
|
||||
{
|
||||
int uart_fd, socket_fd;
|
||||
@ -543,6 +546,7 @@ TEST_CASE("concurrent selects work", "[vfs]")
|
||||
deinit(uart_fd, socket_fd);
|
||||
close(dummy_socket_fd);
|
||||
}
|
||||
#endif
|
||||
|
||||
TEST_CASE("select() works with concurrent mount", "[vfs][fatfs]")
|
||||
{
|
||||
|
@ -23,6 +23,7 @@
|
||||
#include "test_utils.h"
|
||||
#include "sdkconfig.h"
|
||||
|
||||
#if !CONFIG_IDF_TARGET_ESP32H2 // IDF-6782
|
||||
static void fwrite_str_loopback(const char* str, size_t size)
|
||||
{
|
||||
esp_rom_uart_tx_wait_idle(CONFIG_ESP_CONSOLE_UART_NUM);
|
||||
@ -124,6 +125,7 @@ TEST_CASE("CRs are removed from the stdin correctly", "[vfs]")
|
||||
TEST_ASSERT_EQUAL(2, rb);
|
||||
TEST_ASSERT_EQUAL_UINT8_ARRAY("4\n", dst, 2);
|
||||
}
|
||||
#endif
|
||||
|
||||
struct read_task_arg_t {
|
||||
char* out_buffer;
|
||||
@ -137,6 +139,7 @@ struct write_task_arg_t {
|
||||
SemaphoreHandle_t done;
|
||||
};
|
||||
|
||||
#if !CONFIG_IDF_TARGET_ESP32H2 // IDF-6782
|
||||
static void read_task_fn(void* varg)
|
||||
{
|
||||
struct read_task_arg_t* parg = (struct read_task_arg_t*) varg;
|
||||
@ -196,6 +199,7 @@ TEST_CASE("can write to UART while another task is reading", "[vfs]")
|
||||
vSemaphoreDelete(read_arg.done);
|
||||
vSemaphoreDelete(write_arg.done);
|
||||
}
|
||||
#endif
|
||||
|
||||
TEST_CASE("fcntl supported in UART VFS", "[vfs]")
|
||||
{
|
||||
@ -208,6 +212,7 @@ TEST_CASE("fcntl supported in UART VFS", "[vfs]")
|
||||
TEST_ASSERT_NOT_EQUAL(-1, res);
|
||||
}
|
||||
|
||||
#if !CONFIG_IDF_TARGET_ESP32H2 // IDF-6782
|
||||
#ifdef CONFIG_VFS_SUPPORT_TERMIOS
|
||||
TEST_CASE("Can use termios for UART", "[vfs]")
|
||||
{
|
||||
@ -348,3 +353,4 @@ TEST_CASE("Can use termios for UART", "[vfs]")
|
||||
uart_driver_delete(UART_NUM_1);
|
||||
}
|
||||
#endif // CONFIG_VFS_SUPPORT_TERMIOS
|
||||
#endif
|
||||
|
@ -19,7 +19,7 @@
|
||||
#include "../src/common/sae.h"
|
||||
#include "utils/wpabuf.h"
|
||||
#include "test_utils.h"
|
||||
|
||||
#if !CONFIG_IDF_TARGET_ESP32H2 // IDF-6781
|
||||
typedef struct crypto_bignum crypto_bignum;
|
||||
|
||||
|
||||
@ -259,4 +259,5 @@ TEST_CASE("Test SAE functionality with ECC group", "[wpa3_sae]")
|
||||
ESP_LOGI("SAE Test", "=========== Complete ============");
|
||||
|
||||
}
|
||||
#endif
|
||||
#endif /* CONFIG_WPA3_SAE */
|
||||
|
@ -41,6 +41,9 @@ examples/peripherals/i2s/i2s_adc_dac:
|
||||
examples/peripherals/i2s/i2s_basic/i2s_pdm:
|
||||
disable:
|
||||
- if: SOC_I2S_SUPPORTS_PDM != 1
|
||||
- if: IDF_TARGET == "esp32h2"
|
||||
temporary: true
|
||||
reason: rtc timer is not supported
|
||||
|
||||
examples/peripherals/i2s/i2s_basic/i2s_std:
|
||||
disable:
|
||||
@ -54,6 +57,10 @@ examples/peripherals/i2s/i2s_codec/i2s_es7210_tdm:
|
||||
disable:
|
||||
- if: SOC_I2S_SUPPORTS_TDM != 1 or (SOC_I2C_SUPPORTED != 1 or SOC_GPSPI_SUPPORTED != 1)
|
||||
reason: rely on I2S TDM mode to receive audio, I2C to config es7210 and SPI to save audio to SD card
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: cannot pass target test IDF-6811
|
||||
|
||||
examples/peripherals/i2s/i2s_codec/i2s_es8311:
|
||||
disable:
|
||||
@ -135,6 +142,9 @@ examples/peripherals/rmt/onewire_ds18b20:
|
||||
examples/peripherals/rmt/stepper_motor:
|
||||
disable:
|
||||
- if: SOC_RMT_SUPPORT_TX_LOOP_AUTO_STOP != 1
|
||||
- if: IDF_TARGET == "esp32h2"
|
||||
temporary: true
|
||||
reason: wrong GPIO on esp32h2
|
||||
|
||||
examples/peripherals/sdio/host:
|
||||
enable:
|
||||
@ -203,6 +213,12 @@ examples/peripherals/timer_group:
|
||||
disable:
|
||||
- if: SOC_GPTIMER_SUPPORTED != 1
|
||||
|
||||
examples/peripherals/timer_group/gptimer:
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: cannot pass target test IDF-6846
|
||||
|
||||
examples/peripherals/timer_group/gptimer_capture_hc_sr04:
|
||||
disable:
|
||||
- if: SOC_TIMER_SUPPORT_ETM != 1
|
||||
|
@ -1,5 +1,5 @@
|
||||
| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S3 |
|
||||
| ----------------- | ----- | -------- | -------- | -------- | -------- |
|
||||
| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-S3 |
|
||||
| ----------------- | ----- | -------- | -------- | -------- |
|
||||
|
||||
# I2S Basic PDM Mode Example
|
||||
|
||||
|
@ -9,7 +9,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6808
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -7,7 +7,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6264
|
||||
@pytest.mark.generic
|
||||
def test_i2s_es7210_tdm_example(dut: Dut) -> None:
|
||||
dut.expect_exact('example: Create I2S receive channel')
|
||||
|
@ -1,5 +1,5 @@
|
||||
| Supported Targets | ESP32-C6 | ESP32-H2 | ESP32-S3 |
|
||||
| ----------------- | -------- | -------- | -------- |
|
||||
| Supported Targets | ESP32-C6 | ESP32-S3 |
|
||||
| ----------------- | -------- | -------- |
|
||||
|
||||
# RMT Based Stepper Motor Smooth Controller
|
||||
|
||||
|
@ -7,7 +7,7 @@ from pytest_embedded import Dut
|
||||
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
# @pytest.mark.esp32h2 IDF-6808
|
||||
@pytest.mark.generic
|
||||
def test_stepper_motor_example(dut: Dut) -> None:
|
||||
dut.expect_exact('example: Initialize EN + DIR GPIO')
|
||||
|
@ -6,6 +6,7 @@ from pytest_embedded import Dut
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='test failed') # IDF-6846
|
||||
@pytest.mark.generic
|
||||
def test_gptimer_example(dut: Dut) -> None:
|
||||
dut.expect_exact('Create timer handle', timeout=5)
|
||||
|
@ -10,6 +10,12 @@ examples/system/app_trace_to_host:
|
||||
temporary: true
|
||||
reason: lack of runners
|
||||
|
||||
examples/system/base_mac_address:
|
||||
disable_test:
|
||||
- if: IDF_TARGET in ["esp32h2"]
|
||||
temporary: true
|
||||
reason: cannot pass, IDF-6809
|
||||
|
||||
examples/system/console/advanced:
|
||||
disable:
|
||||
- if: IDF_TARGET in ["esp32c2", "esp32c6", "esp32h2"]
|
||||
|
@ -6,6 +6,7 @@ from pytest_embedded import Dut
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='cannot pass') # IDF-6809
|
||||
@pytest.mark.generic
|
||||
def test_base_mac_address(dut: Dut) -> None:
|
||||
dut.expect_exact('BASE_MAC: Base MAC Address read from EFUSE BLK0')
|
||||
|
@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
import logging
|
||||
@ -29,7 +29,7 @@ ONE_SHOT_TIMER_PERIOD = 5000000
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6', 'esp32h2'], reason='c6/h2 support TBD')
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize(
|
||||
'config',
|
||||
|
@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: Unlicense OR CC0-1.0
|
||||
import http.server
|
||||
import multiprocessing
|
||||
@ -121,8 +121,11 @@ def start_chunked_server(ota_image_dir: str, server_port: int) -> subprocess.Pop
|
||||
return chunked_server
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32s2
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c2
|
||||
@pytest.mark.ethernet_ota
|
||||
def test_examples_protocol_native_ota_example(dut: Dut) -> None:
|
||||
"""
|
||||
@ -161,8 +164,11 @@ def test_examples_protocol_native_ota_example(dut: Dut) -> None:
|
||||
thread1.terminate()
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32s2
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c2
|
||||
@pytest.mark.ethernet_ota
|
||||
def test_examples_protocol_native_ota_example_truncated_bin(dut: Dut) -> None:
|
||||
"""
|
||||
@ -212,8 +218,11 @@ def test_examples_protocol_native_ota_example_truncated_bin(dut: Dut) -> None:
|
||||
thread1.terminate()
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32s2
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c2
|
||||
@pytest.mark.ethernet_ota
|
||||
def test_examples_protocol_native_ota_example_truncated_header(dut: Dut) -> None:
|
||||
"""
|
||||
@ -262,8 +271,11 @@ def test_examples_protocol_native_ota_example_truncated_header(dut: Dut) -> None
|
||||
thread1.terminate()
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32s2
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c2
|
||||
@pytest.mark.ethernet_ota
|
||||
def test_examples_protocol_native_ota_example_random(dut: Dut) -> None:
|
||||
"""
|
||||
@ -312,8 +324,11 @@ def test_examples_protocol_native_ota_example_random(dut: Dut) -> None:
|
||||
thread1.terminate()
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32c6'], reason='c6 support TBD')
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.esp32s2
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c2
|
||||
@pytest.mark.ethernet_ota
|
||||
def test_examples_protocol_native_ota_example_chunked(dut: Dut) -> None:
|
||||
"""
|
||||
|
@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
"""
|
||||
Command line tool to assign tests to CI test jobs.
|
||||
@ -120,6 +120,7 @@ class UnitTestGroup(IDFCaseGroup):
|
||||
'esp32c2': 'ESP32C2DUT',
|
||||
'esp32c3': 'ESP32C3DUT',
|
||||
'esp32c6': 'ESP32C6DUT',
|
||||
'esp32h2': 'ESP32H2DUT',
|
||||
'esp8266': 'ESP8266DUT',
|
||||
}
|
||||
|
||||
|
@ -631,6 +631,15 @@ class ESP32C6DUT(IDFDUT):
|
||||
return targets.ESP32C6ROM
|
||||
|
||||
|
||||
class ESP32H2DUT(IDFDUT):
|
||||
TARGET = 'esp32h2'
|
||||
TOOLCHAIN_PREFIX = 'riscv32-esp-elf-'
|
||||
|
||||
@classmethod
|
||||
def get_rom(cls):
|
||||
return targets.ESP32H2ROM
|
||||
|
||||
|
||||
class ESP32H4DUT(IDFDUT):
|
||||
TARGET = 'esp32h4'
|
||||
TOOLCHAIN_PREFIX = 'riscv32-esp-elf-'
|
||||
@ -650,7 +659,7 @@ class ESP8266DUT(IDFDUT):
|
||||
|
||||
|
||||
def get_target_by_rom_class(cls):
|
||||
for c in [ESP32DUT, ESP32S2DUT, ESP32S3DUT, ESP32C2DUT, ESP32C3DUT, ESP32C6DUT, ESP32H4DUT, ESP8266DUT, IDFQEMUDUT]:
|
||||
for c in [ESP32DUT, ESP32S2DUT, ESP32S3DUT, ESP32C2DUT, ESP32C3DUT, ESP32C6DUT, ESP32H2DUT, ESP32H4DUT, ESP8266DUT, IDFQEMUDUT]:
|
||||
if c.get_rom() == cls:
|
||||
return c.TARGET
|
||||
return None
|
||||
|
@ -14,7 +14,7 @@ from tiny_test_fw import TinyFW, Utility
|
||||
|
||||
from .IDFApp import UT, ComponentUTApp, Example, IDFApp, LoadableElfTestApp, TestApp # noqa: export all Apps for users
|
||||
from .IDFDUT import (ESP32C2DUT, ESP32C3DUT, ESP32C3FPGADUT, ESP32C6DUT, ESP32DUT, # noqa: export DUTs for users
|
||||
ESP32H4DUT, ESP32QEMUDUT, ESP32S2DUT, ESP32S3DUT, ESP32S3FPGADUT, ESP8266DUT, IDFDUT)
|
||||
ESP32H2DUT, ESP32H4DUT, ESP32QEMUDUT, ESP32S2DUT, ESP32S3DUT, ESP32S3FPGADUT, ESP8266DUT, IDFDUT)
|
||||
from .unity_test_parser import TestFormat, TestResults
|
||||
|
||||
# pass TARGET_DUT_CLS_DICT to Env.py to avoid circular dependency issue.
|
||||
@ -28,6 +28,7 @@ TARGET_DUT_CLS_DICT = {
|
||||
'ESP32S3FPGA': ESP32S3FPGADUT,
|
||||
'ESP32C6': ESP32C6DUT,
|
||||
'ESP32H4': ESP32H4DUT,
|
||||
'ESP32H2': ESP32H2DUT,
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
import pytest
|
||||
@ -6,6 +6,7 @@ from pytest_embedded_idf.dut import IdfDut
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='h2 does not support wifi')
|
||||
@pytest.mark.generic
|
||||
def test_i2c_wifi_startup(dut: IdfDut) -> None:
|
||||
dut.expect_exact('I2C-WIFI test success')
|
||||
|
@ -6,6 +6,7 @@ from pytest_embedded_idf.dut import IdfDut
|
||||
|
||||
|
||||
@pytest.mark.supported_targets
|
||||
@pytest.mark.temp_skip_ci(targets=['esp32h2'], reason='h2 not supported')
|
||||
@pytest.mark.generic
|
||||
@pytest.mark.parametrize('config', [
|
||||
'phy_multiple_init_data',
|
||||
|
3
tools/unit-test-app/configs/default_2_h2
Normal file
3
tools/unit-test-app/configs/default_2_h2
Normal file
@ -0,0 +1,3 @@
|
||||
# This config is split between targets since different component needs to be included
|
||||
CONFIG_IDF_TARGET="esp32h2"
|
||||
TEST_COMPONENTS=app_trace esp_eth esp_hid esp_netif esp_phy esp_wifi espcoredump hal lwip mdns mqtt newlib nvs_flash partition_table sdmmc
|
3
tools/unit-test-app/configs/default_3_h2
Normal file
3
tools/unit-test-app/configs/default_3_h2
Normal file
@ -0,0 +1,3 @@
|
||||
# This config is split between targets since different component needs to be included
|
||||
CONFIG_IDF_TARGET="esp32h2"
|
||||
TEST_EXCLUDE_COMPONENTS=app_trace esp_eth esp_hid esp_netif esp_phy esp_ringbuf esp_wifi espcoredump hal lwip mdns mqtt newlib nvs_flash partition_table sdmmc esp_system driver soc spi_flash vfs
|
3
tools/unit-test-app/configs/default_h2
Normal file
3
tools/unit-test-app/configs/default_h2
Normal file
@ -0,0 +1,3 @@
|
||||
# This config is split between targets since different component needs to be included
|
||||
CONFIG_IDF_TARGET="esp32h2"
|
||||
TEST_COMPONENTS=esp_system driver soc spi_flash vfs
|
4
tools/unit-test-app/configs/freertos_compliance_h2
Normal file
4
tools/unit-test-app/configs/freertos_compliance_h2
Normal file
@ -0,0 +1,4 @@
|
||||
# This config is split between targets since different component needs to be included
|
||||
CONFIG_IDF_TARGET="esp32h2"
|
||||
TEST_COMPONENTS=driver esp_hw_support esp_system spi_flash
|
||||
CONFIG_FREERTOS_CHECK_PORT_CRITICAL_COMPLIANCE=y
|
3
tools/unit-test-app/configs/no_optimization_h2
Normal file
3
tools/unit-test-app/configs/no_optimization_h2
Normal file
@ -0,0 +1,3 @@
|
||||
CONFIG_IDF_TARGET="esp32h2"
|
||||
TEST_COMPONENTS=esp_ipc spi_flash
|
||||
CONFIG_COMPILER_OPTIMIZATION_NONE=y
|
5
tools/unit-test-app/configs/release_h2
Normal file
5
tools/unit-test-app/configs/release_h2
Normal file
@ -0,0 +1,5 @@
|
||||
CONFIG_IDF_TARGET="esp32h2"
|
||||
TEST_COMPONENTS=esp_hw_support esp_system esp_ipc driver soc spi_flash vfs sdmmc
|
||||
CONFIG_COMPILER_OPTIMIZATION_SIZE=y
|
||||
CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT=y
|
||||
CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y
|
3
tools/unit-test-app/configs/rom_options_h2
Normal file
3
tools/unit-test-app/configs/rom_options_h2
Normal file
@ -0,0 +1,3 @@
|
||||
CONFIG_IDF_TARGET="esp32h2"
|
||||
TEST_COMPONENTS=spi_flash
|
||||
CONFIG_SPI_FLASH_ROM_IMPL=y
|
@ -6,6 +6,7 @@
|
||||
"ESP32C2_IDF": "CONFIG_IDF_TARGET_ESP32C2=y"
|
||||
"ESP32C3_IDF": "CONFIG_IDF_TARGET_ESP32C3=y"
|
||||
"ESP32C6_IDF": "CONFIG_IDF_TARGET_ESP32C6=y"
|
||||
"ESP32H2_IDF": "CONFIG_IDF_TARGET_ESP32H2=y"
|
||||
"quad_psram": '{CONFIG_SPIRAM_MODE_QUAD=y} and {CONFIG_IDF_TARGET_ESP32S3=y}'
|
||||
"octal_psram": '{CONFIG_SPIRAM_MODE_OCT=y} and {CONFIG_IDF_TARGET_ESP32S3=y}'
|
||||
"xtal_26mhz": '{CONFIG_XTAL_FREQ_26=y} and {CONFIG_IDF_TARGET_ESP32C2=y}'
|
||||
|
Loading…
x
Reference in New Issue
Block a user