openthread ci: replace h4 with c6

This commit is contained in:
Xu Si Yu
2023-03-22 16:26:29 +08:00
parent ab63aaa4a2
commit 90372e96ab
8 changed files with 75 additions and 76 deletions

View File

@@ -175,7 +175,6 @@ build:integration_test:
- target_test - target_test
- example_test - example_test
included_in: included_in:
- "build:example_test-esp32h4"
- "build:example_test-esp32s3" - "build:example_test-esp32s3"
- "build:example_test-esp32c6" - "build:example_test-esp32c6"
- "build:example_test-esp32h2" - "build:example_test-esp32h2"

View File

@@ -915,10 +915,9 @@ example_test_pytest_openthread_br:
needs: needs:
- build_pytest_examples_esp32s3 - build_pytest_examples_esp32s3
- build_pytest_examples_esp32c6 - build_pytest_examples_esp32c6
- build_pytest_examples_esp32h4
- build_pytest_examples_esp32h2 - build_pytest_examples_esp32h2
tags: tags:
- esp32h4 - esp32c6
- openthread_br - openthread_br
component_ut_pytest_esp32s3_usb_host: component_ut_pytest_esp32s3_usb_host:

View File

@@ -12,12 +12,16 @@ examples/openthread/ot_br:
examples/openthread/ot_cli: examples/openthread/ot_cli:
enable: enable:
- if: IDF_TARGET in ["esp32h2", "esp32h4", "esp32c6"] - if: IDF_TARGET in ["esp32h2", "esp32c6"]
disable_test:
- if: IDF_TARGET == "esp32c6"
temporary: true
reason: only test on esp32h2
examples/openthread/ot_rcp: examples/openthread/ot_rcp:
enable: enable:
- if: IDF_TARGET in ["esp32h2", "esp32h4", "esp32c6"]
disable_test:
- if: IDF_TARGET in ["esp32h2", "esp32c6"] - if: IDF_TARGET in ["esp32h2", "esp32c6"]
disable_test:
- if: IDF_TARGET == "esp32h2"
temporary: true temporary: true
reason: only test on esp32h4 reason: only test on esp32c6

View File

@@ -1,5 +1,5 @@
| Supported Targets | ESP32-C6 | ESP32-H2 | ESP32-H4 | | Supported Targets | ESP32-C6 | ESP32-H2 |
| ----------------- | -------- | -------- | -------- | | ----------------- | -------- | -------- |
# OpenThread Command Line Example # OpenThread Command Line Example

View File

@@ -1,3 +0,0 @@
CONFIG_IDF_TARGET="esp32h4"
CONFIG_IDF_TARGET_ESP32H4=y
CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_2=y

View File

@@ -1,5 +1,4 @@
CONFIG_IDF_TARGET="esp32h4" CONFIG_IDF_TARGET="esp32h2"
CONFIG_IDF_TARGET_ESP32H4=y CONFIG_IDF_TARGET_ESP32H2=y
CONFIG_IDF_TARGET_ESP32H4_BETA_VERSION_2=y
CONFIG_OPENTHREAD_CLI=n CONFIG_OPENTHREAD_CLI=n
CONFIG_OPENTHREAD_CLI_ESP_EXTENSION=n CONFIG_OPENTHREAD_CLI_ESP_EXTENSION=n

View File

@@ -1,5 +1,5 @@
| Supported Targets | ESP32-C6 | ESP32-H2 | ESP32-H4 | | Supported Targets | ESP32-C6 | ESP32-H2 |
| ----------------- | -------- | -------- | -------- | | ----------------- | -------- | -------- |
# OpenThread Radio Co-Processor (RCP) Example # OpenThread Radio Co-Processor (RCP) Example

View File

@@ -65,38 +65,31 @@ def fixture_Init_interface() -> bool:
default_br_ot_para = ocf.thread_parameter('leader', '', '12', '7766554433221100', True) default_br_ot_para = ocf.thread_parameter('leader', '', '12', '7766554433221100', True)
default_br_wifi_para = ocf.wifi_parameter('OTCITE', 'otcitest888', 10) default_br_wifi_para = ocf.wifi_parameter('OTCITE', 'otcitest888', 10)
default_cli_ot_para = ocf.thread_parameter('router', '', '12', '', False) default_cli_ot_para = ocf.thread_parameter('router', '', '', '', False)
# Case 1: Thread network formation and attaching # Case 1: Thread network formation and attaching
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h2 @pytest.mark.esp32h2
@pytest.mark.esp32h4
@pytest.mark.esp32c6 @pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=0, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR|/dev/USB_CLI_C6|/dev/USB_CLI_H2', ('rcp|cli_h2|br', 3,
'rcp|cli|br|cli_c6|cli_h2', 5,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}' f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' 'esp32c6|esp32h2|esp32s3'),
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}',
'esp32h2beta2|esp32h2beta2|esp32s3|esp32c6|esp32h2',
'esp32h4|esp32h4|esp32s3|esp32c6|esp32h2'),
], ],
indirect=True, indirect=True,
) )
def test_thread_connect(dut:Tuple[IdfDut, IdfDut, IdfDut, IdfDut, IdfDut]) -> None: def test_thread_connect(dut:Tuple[IdfDut, IdfDut, IdfDut]) -> None:
br = dut[2] br = dut[2]
cli_h4 = dut[1] cli_h2 = dut[1]
cli_c6 = dut[3]
cli_h2 = dut[4]
dut[0].serial.stop_redirect_thread() dut[0].serial.stop_redirect_thread()
cli_list = [cli_h4, cli_c6, cli_h2] cli_list = [cli_h2]
router_extaddr_list = ['7766554433221101', '7766554433221102', '7766554433221103'] router_extaddr_list = ['7766554433221101']
ocf.reset_thread(br) ocf.reset_thread(br)
for cli in cli_list: for cli in cli_list:
@@ -144,17 +137,18 @@ def formBasicWiFiThreadNetwork(br:IdfDut, cli:IdfDut) -> None:
# Case 2: Bidirectional IPv6 connectivity # Case 2: Bidirectional IPv6 connectivity
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h4 @pytest.mark.esp32h2
@pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=0, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR', 'rcp|cli|br', 3, ('rcp|cli_h2|br', 3,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}', f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
'esp32h2beta2|esp32h2beta2|esp32s3', 'esp32h4|esp32h4|esp32s3'), 'esp32c6|esp32h2|esp32s3'),
], ],
indirect=True, indirect=True,
) )
@@ -191,17 +185,18 @@ def test_Bidirectional_IPv6_connectivity(Init_interface:bool, dut: Tuple[IdfDut,
# Case 3: Multicast forwarding from Wi-Fi to Thread network # Case 3: Multicast forwarding from Wi-Fi to Thread network
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h4 @pytest.mark.esp32h2
@pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=1, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR', 'rcp|cli|br', 3, ('rcp|cli_h2|br', 3,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}', f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
'esp32h2beta2|esp32h2beta2|esp32s3', 'esp32h4|esp32h4|esp32s3'), 'esp32c6|esp32h2|esp32s3'),
], ],
indirect=True, indirect=True,
) )
@@ -230,17 +225,18 @@ def test_multicast_forwarding_A(Init_interface:bool, dut: Tuple[IdfDut, IdfDut,
# Case 4: Multicast forwarding from Thread to Wi-Fi network # Case 4: Multicast forwarding from Thread to Wi-Fi network
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h4 @pytest.mark.esp32h2
@pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=1, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR', 'rcp|cli|br', 3, ('rcp|cli_h2|br', 3,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}', f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
'esp32h2beta2|esp32h2beta2|esp32s3', 'esp32h4|esp32h4|esp32s3'), 'esp32c6|esp32h2|esp32s3'),
], ],
indirect=True, indirect=True,
) )
@@ -281,17 +277,18 @@ def test_multicast_forwarding_B(Init_interface:bool, dut: Tuple[IdfDut, IdfDut,
# Case 5: discover dervice published by Thread device # Case 5: discover dervice published by Thread device
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h4 @pytest.mark.esp32h2
@pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=1, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR', 'rcp|cli|br', 3, ('rcp|cli_h2|br', 3,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}', f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
'esp32h2beta2|esp32h2beta2|esp32s3', 'esp32h4|esp32h4|esp32s3'), 'esp32c6|esp32h2|esp32s3'),
], ],
indirect=True, indirect=True,
) )
@@ -336,17 +333,18 @@ def test_service_discovery_of_Thread_device(Init_interface:bool, Init_avahi:bool
# Case 6: discover dervice published by Wi-Fi device # Case 6: discover dervice published by Wi-Fi device
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h4 @pytest.mark.esp32h2
@pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=1, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR', 'rcp|cli|br', 3, ('rcp|cli_h2|br', 3,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}', f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
'esp32h2beta2|esp32h2beta2|esp32s3', 'esp32h4|esp32h4|esp32s3'), 'esp32c6|esp32h2|esp32s3'),
], ],
indirect=True, indirect=True,
) )
@@ -401,17 +399,18 @@ def test_service_discovery_of_WiFi_device(Init_interface:bool, Init_avahi:bool,
# Case 7: ICMP communication via NAT64 # Case 7: ICMP communication via NAT64
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h4 @pytest.mark.esp32h2
@pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=1, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR', 'rcp|cli|br', 3, ('rcp|cli_h2|br', 3,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}', f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
'esp32h2beta2|esp32h2beta2|esp32s3', 'esp32h4|esp32h4|esp32s3'), 'esp32c6|esp32h2|esp32s3'),
], ],
indirect=True, indirect=True,
) )
@@ -435,17 +434,18 @@ def test_ICMP_NAT64(Init_interface:bool, dut: Tuple[IdfDut, IdfDut, IdfDut]) ->
# Case 8: UDP communication via NAT64 # Case 8: UDP communication via NAT64
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h4 @pytest.mark.esp32h2
@pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=1, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR', 'rcp|cli|br', 3, ('rcp|cli_h2|br', 3,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}', f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
'esp32h2beta2|esp32h2beta2|esp32s3', 'esp32h4|esp32h4|esp32s3'), 'esp32c6|esp32h2|esp32s3'),
], ],
indirect=True, indirect=True,
) )
@@ -487,17 +487,18 @@ def test_UDP_NAT64(Init_interface:bool, dut: Tuple[IdfDut, IdfDut, IdfDut]) -> N
# Case 9: TCP communication via NAT64 # Case 9: TCP communication via NAT64
@pytest.mark.esp32s3 @pytest.mark.supported_targets
@pytest.mark.esp32h4 @pytest.mark.esp32h2
@pytest.mark.esp32c6
@pytest.mark.openthread_br @pytest.mark.openthread_br
@pytest.mark.flaky(reruns=1, reruns_delay=1) @pytest.mark.flaky(reruns=1, reruns_delay=1)
@pytest.mark.parametrize( @pytest.mark.parametrize(
'port, config, count, app_path, beta_target, target', [ 'config, count, app_path, target', [
('/dev/USB_RCP|/dev/USB_CLI|/dev/USB_BR', 'rcp|cli|br', 3, ('rcp|cli_h2|br', 3,
f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}' f'{os.path.join(os.path.dirname(__file__), "ot_rcp")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}' f'|{os.path.join(os.path.dirname(__file__), "ot_cli")}'
f'|{os.path.join(os.path.dirname(__file__), "ot_br")}', f'|{os.path.join(os.path.dirname(__file__), "ot_br")}',
'esp32h2beta2|esp32h2beta2|esp32s3', 'esp32h4|esp32h4|esp32s3'), 'esp32c6|esp32h2|esp32s3'),
], ],
indirect=True, indirect=True,
) )