ci(esp_eth): add S31 coverage and drop external driver test_apps

Add YT8531/S31 tests for esp_eth, eth basic, and iperf. Remove
test_apps coverage of drivers maintained outside IDF.
This commit is contained in:
Ondrej Kosta
2026-08-27 11:49:37 +02:00
committed by Euripedes Rocha
parent a6f543a25b
commit c024b2e8a1
37 changed files with 120 additions and 681 deletions
@@ -2,8 +2,8 @@
components/esp_eth/test_apps: components/esp_eth/test_apps:
enable: enable:
- if: IDF_TARGET in ["esp32", "esp32p4"] - if: IDF_TARGET in ["esp32", "esp32p4", "esp32s31"]
reason: ESP32 and ESP32P4 have internal EMAC. SPI Ethernet runners are based on ESP32. reason: ESP32, ESP32P4 and ESP32S31 have internal EMAC.
depends_components: depends_components:
- esp_eth - esp_eth
- esp_http_client - esp_http_client
+2 -2
View File
@@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-P4 | | Supported Targets | ESP32 | ESP32-P4 | ESP32-S31 |
| ----------------- | ----- | -------- | | ----------------- | ----- | -------- | --------- |
# Ethernet Test # Ethernet Test
+5 -107
View File
@@ -104,117 +104,15 @@ def test_esp32p4_emac_clko(dut: IdfDut) -> None:
dut.run_all_single_board_cases(group='esp_emac_clk_out') dut.run_all_single_board_cases(group='esp_emac_clk_out')
# ----------- LAN8720 ----------- # ----------- YT8531 ESP32S31 -----------
@pytest.mark.eth_lan8720
@pytest.mark.parametrize( @pytest.mark.parametrize(
'config', 'config, target',
[ [
'default_lan8720', pytest.param('default_yt8531_esp32s31', 'esp32s31', marks=[pytest.mark.eth_yt8531]),
], ],
indirect=True, indirect=['target'],
) )
@idf_parametrize('target', ['esp32'], indirect=['target']) def test_esp32s31_ethernet(dut: IdfDut, eth_test_runner: 'EthTestRunner') -> None:
def test_esp_eth_lan8720(dut: IdfDut, eth_test_runner: 'EthTestRunner') -> None:
eth_test_runner.run_ethernet_test_apps(dut)
dut.serial.hard_reset()
eth_test_runner.run_ethernet_l2_test(dut)
# ----------- RTL8201 -----------
@pytest.mark.eth_rtl8201
@pytest.mark.parametrize(
'config',
[
'default_rtl8201',
],
indirect=True,
)
@idf_parametrize('target', ['esp32'], indirect=['target'])
def test_esp_eth_rtl8201(dut: IdfDut, eth_test_runner: 'EthTestRunner') -> None:
eth_test_runner.run_ethernet_test_apps(dut)
dut.serial.hard_reset()
eth_test_runner.run_ethernet_l2_test(dut)
# ----------- KSZ8041 -----------
@pytest.mark.eth_ksz8041
@pytest.mark.parametrize(
'config',
[
'default_ksz8041',
],
indirect=True,
)
@idf_parametrize('target', ['esp32'], indirect=['target'])
def test_esp_eth_ksz8041(dut: IdfDut, eth_test_runner: 'EthTestRunner') -> None:
eth_test_runner.run_ethernet_test_apps(dut)
dut.serial.hard_reset()
eth_test_runner.run_ethernet_l2_test(dut)
# ----------- DP83848 -----------
@pytest.mark.eth_dp83848
@pytest.mark.parametrize(
'config',
[
'default_dp83848',
],
indirect=True,
)
@idf_parametrize('target', ['esp32'], indirect=['target'])
def test_esp_eth_dp83848(dut: IdfDut, eth_test_runner: 'EthTestRunner') -> None:
eth_test_runner.run_ethernet_test_apps(dut)
dut.serial.hard_reset()
eth_test_runner.run_ethernet_l2_test(dut)
# ----------- W5500 -----------
@pytest.mark.eth_w5500
@pytest.mark.parametrize(
'config',
[
'default_w5500',
],
indirect=True,
)
@idf_parametrize('target', ['esp32'], indirect=['target'])
def test_esp_eth_w5500(dut: IdfDut, eth_test_runner: 'EthTestRunner') -> None:
eth_test_runner.run_ethernet_test_apps(dut)
dut.serial.hard_reset()
eth_test_runner.run_ethernet_l2_test(dut)
dut.serial.hard_reset()
eth_test_runner.run_ethernet_heap_alloc_test(dut)
# ----------- KSZ8851SNL -----------
@pytest.mark.eth_ksz8851snl
@pytest.mark.parametrize(
'config',
[
'default_ksz8851snl',
],
indirect=True,
)
@idf_parametrize('target', ['esp32'], indirect=['target'])
def test_esp_eth_ksz8851snl(dut: IdfDut, eth_test_runner: 'EthTestRunner') -> None:
eth_test_runner.run_ethernet_test_apps(dut)
dut.serial.hard_reset()
eth_test_runner.run_ethernet_l2_test(dut)
dut.serial.hard_reset()
eth_test_runner.run_ethernet_heap_alloc_test(dut)
# ----------- DM9051 -----------
@pytest.mark.eth_dm9051
@pytest.mark.parametrize(
'config',
[
'default_dm9051',
],
indirect=True,
)
@idf_parametrize('target', ['esp32'], indirect=['target'])
def test_esp_eth_dm9051(dut: IdfDut, eth_test_runner: 'EthTestRunner') -> None:
eth_test_runner.run_ethernet_test_apps(dut) eth_test_runner.run_ethernet_test_apps(dut)
dut.serial.hard_reset() dut.serial.hard_reset()
eth_test_runner.run_ethernet_l2_test(dut) eth_test_runner.run_ethernet_l2_test(dut)
@@ -1,24 +0,0 @@
CONFIG_IDF_TARGET="esp32"
CONFIG_UNITY_ENABLE_FIXTURE=y
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_ESP_TASK_WDT_EN=n
# Config Ethernet Init
CONFIG_ETHERNET_SPI_SUPPORT=y
CONFIG_ETHERNET_INTERNAL_SUPPORT=n
CONFIG_ETHERNET_SPI_DEV0_DM9051=y
CONFIG_ETHERNET_SPI_DEV1_NONE=y
CONFIG_ETHERNET_SPI_CLOCK_MHZ=20
CONFIG_ETHERNET_DEFAULT_EVENT_HANDLER=n
# SPI specific test configuration
CONFIG_ETH_TEST_MAC_ADDR_UI=n
CONFIG_ETH_TEST_PHY_ADDRESS_DISABLED=y
CONFIG_ETH_TEST_STRESS_TEST_TASK_PRIO=20
# W5500 specific test configuration
# FILL_RX_BUFFER_ITERATIONS = 16384 / 1522 = 10.8
CONFIG_ETH_TEST_FILL_RX_BUFFER_ITERATIONS=11
CONFIG_ETH_TEST_10MB_LOOPBACK_DISABLED=y
@@ -1,19 +0,0 @@
CONFIG_IDF_TARGET="esp32"
CONFIG_UNITY_ENABLE_FIXTURE=y
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_ESP_TASK_WDT_EN=n
# Config Ethernet Init
CONFIG_ETHERNET_INTERNAL_SUPPORT=y
CONFIG_ETHERNET_PHY_DP83848=y
CONFIG_ETHERNET_PHY_INTERFACE_RMII=y
CONFIG_ETHERNET_RMII_CLK_OUTPUT=y
CONFIG_ETHERNET_RMII_CLK_EXT_LOOPBACK_EN=n
CONFIG_ETHERNET_RMII_CLK_GPIO=17
CONFIG_ETHERNET_DEFAULT_EVENT_HANDLER=n
# DP83848 specific test configuration
CONFIG_ETH_TEST_FILL_RX_BUFFER_ITERATIONS=10
CONFIG_ETH_TEST_LOOPBACK_WITH_AUTONEGOTIATION_DISABLED=y
@@ -1,15 +0,0 @@
CONFIG_IDF_TARGET="esp32"
CONFIG_UNITY_ENABLE_FIXTURE=y
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_ESP_TASK_WDT_EN=n
# Config Ethernet Init
CONFIG_ETHERNET_INTERNAL_SUPPORT=y
CONFIG_ETHERNET_PHY_KSZ80XX=y
CONFIG_ETHERNET_DEFAULT_EVENT_HANDLER=n
# KSZ8041 specific test configuration
CONFIG_ETH_TEST_FILL_RX_BUFFER_ITERATIONS=10
CONFIG_ETH_TEST_10MB_LOOPBACK_DISABLED=y
@@ -1,23 +0,0 @@
CONFIG_IDF_TARGET="esp32"
CONFIG_UNITY_ENABLE_FIXTURE=y
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_ESP_TASK_WDT_EN=n
# Config Ethernet Init
CONFIG_ETHERNET_SPI_SUPPORT=y
CONFIG_ETHERNET_INTERNAL_SUPPORT=n
CONFIG_ETHERNET_SPI_DEV0_KSZ8851SNL=y
CONFIG_ETHERNET_SPI_DEV1_NONE=y
CONFIG_ETHERNET_SPI_CLOCK_MHZ=20
CONFIG_ETHERNET_DEFAULT_EVENT_HANDLER=n
# SPI specific test configuration
CONFIG_ETH_TEST_MAC_ADDR_UI=n
CONFIG_ETH_TEST_PHY_ADDRESS_DISABLED=y
CONFIG_ETH_TEST_STRESS_TEST_TASK_PRIO=20
# KSZ8851SNL specific test configuration
# FILL_RX_BUFFER_ITERATIONS = 12288 / 1522 = 8.1
CONFIG_ETH_TEST_FILL_RX_BUFFER_ITERATIONS=9
@@ -1,21 +0,0 @@
CONFIG_IDF_TARGET="esp32"
CONFIG_UNITY_ENABLE_FIXTURE=y
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_ESP_TASK_WDT_EN=n
# interface configuration
CONFIG_ETHERNET_INTERNAL_SUPPORT=y
CONFIG_ETHERNET_PHY_LAN87XX=y
CONFIG_ETHERNET_PHY_INTERFACE_RMII=y
CONFIG_ETHERNET_RMII_CLK_OUTPUT=y
CONFIG_ETHERNET_RMII_CLK_EXT_LOOPBACK_EN=n
CONFIG_ETHERNET_RMII_CLK_GPIO=17
CONFIG_ETHERNET_PHY_ADDR=0
CONFIG_ETHERNET_DEFAULT_EVENT_HANDLER=n
# LAN8720 specific test configuration
CONFIG_ETH_TEST_FILL_RX_BUFFER_ITERATIONS=10
CONFIG_ETH_TEST_LOOPBACK_WITH_AUTONEGOTIATION_DISABLED=y
CONFIG_ETH_TEST_LAN8720_ERRATA_ENABLED=y
@@ -1,20 +0,0 @@
CONFIG_IDF_TARGET="esp32"
CONFIG_UNITY_ENABLE_FIXTURE=y
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_ESP_TASK_WDT_EN=n
# Config Ethernet Init
CONFIG_ETHERNET_PHY_RTL8201=y
CONFIG_ETHERNET_INTERNAL_SUPPORT=y
CONFIG_ETHERNET_RMII_CLK_INPUT=y
CONFIG_ETHERNET_MDC_GPIO=16
CONFIG_ETHERNET_MDIO_GPIO=17
CONFIG_ETHERNET_PHY_RST_GPIO=-1
CONFIG_ETHERNET_PHY_ADDR=0
CONFIG_ETHERNET_DEFAULT_EVENT_HANDLER=n
# RTL8201 specific test configuration
CONFIG_ETH_TEST_FILL_RX_BUFFER_ITERATIONS=10
CONFIG_ETH_TEST_LOOPBACK_WITH_AUTONEGOTIATION_DISABLED=y
@@ -1,25 +0,0 @@
CONFIG_IDF_TARGET="esp32"
CONFIG_UNITY_ENABLE_FIXTURE=y
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_ESP_TASK_WDT_EN=n
# Config Ethernet Init
CONFIG_ETHERNET_SPI_SUPPORT=y
CONFIG_ETHERNET_INTERNAL_SUPPORT=n
CONFIG_ETHERNET_SPI_DEV0_W5500=y
CONFIG_ETHERNET_SPI_DEV1_NONE=y
CONFIG_ETHERNET_SPI_CLOCK_MHZ=20
CONFIG_ETHERNET_DEFAULT_EVENT_HANDLER=n
# SPI specific test configuration
CONFIG_ETH_TEST_MAC_ADDR_UI=n
CONFIG_ETH_TEST_PHY_ADDRESS_DISABLED=y
CONFIG_ETH_TEST_STRESS_TEST_TASK_PRIO=20
# W5500 specific test configuration
# FILL_RX_BUFFER_ITERATIONS = 16384 / 1522 = 10.8
CONFIG_ETH_TEST_FILL_RX_BUFFER_ITERATIONS=11
CONFIG_ETH_TEST_LOOPBACK_DISABLED=y
CONFIG_ETH_TEST_W5500_IP6_MCAST_DEVIATION_ENABLED=y
@@ -0,0 +1,21 @@
CONFIG_IDF_TARGET="esp32s31"
CONFIG_UNITY_ENABLE_FIXTURE=y
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_ESP_TASK_WDT_EN=n
# interface configuration
CONFIG_ETHERNET_INTERNAL_SUPPORT=y
CONFIG_ETHERNET_PHY_INTERFACE_DEFAULT=y
CONFIG_ETHERNET_PHY_YT8531=y
CONFIG_ETHERNET_DEFAULT_EVENT_HANDLER=n
# specific test configuration
# ESP32S31 has smaller internal Rx FIFO, hence more Rx buffers is used by default
CONFIG_ETH_TEST_FILL_RX_BUFFER_ITERATIONS=20
CONFIG_ETH_TEST_LOOPBACK_WITH_AUTONEGOTIATION_DISABLED=y
CONFIG_ETH_TEST_PHY_1000M_CAPABLE=y
# ESP32S31 provides only two universally administered MAC addresses in eFuse, so the internal EMAC
# gets a locally administered ETH MAC by default (see CONFIG_ESP32S31_UNIVERSAL_MAC_ADDRESSES).
CONFIG_ETH_TEST_MAC_ADDR_UI=n
+1 -4
View File
@@ -5,8 +5,6 @@ examples/ethernet/basic:
- if: INCLUDE_DEFAULT == 1 - if: INCLUDE_DEFAULT == 1
disable: disable:
- if: IDF_TARGET not in ["esp32", "esp32p4", "esp32s31"] - if: IDF_TARGET not in ["esp32", "esp32p4", "esp32s31"]
disable_test:
- if: IDF_TARGET == "esp32s31"
temporary: true temporary: true
reason: lack of runners reason: lack of runners
depends_components: depends_components:
@@ -20,11 +18,10 @@ examples/ethernet/iperf:
- if: IDF_TARGET in ["esp32h21", "esp32h4"] - if: IDF_TARGET in ["esp32h21", "esp32h4"]
temporary: true temporary: true
reason: not supported yet # TODO: [ESP32H21] IDF-11581 [ESP32H4] IDF-12360 reason: not supported yet # TODO: [ESP32H21] IDF-11581 [ESP32H4] IDF-12360
- if: IDF_TARGET not in ["esp32", "esp32p4"] - if: IDF_TARGET not in ["esp32", "esp32p4", "esp32s31"]
temporary: true temporary: true
reason: lack of runners reason: lack of runners
depends_components: depends_components:
- *common_components
- esp_eth - esp_eth
- esp_netif - esp_netif
- lwip - lwip
@@ -62,11 +62,12 @@ menu "Example Ethernet Configuration"
config EXAMPLE_ETH_RMII_CLK_EXT_LOOPBACK_IN_GPIO config EXAMPLE_ETH_RMII_CLK_EXT_LOOPBACK_IN_GPIO
depends on EXAMPLE_ETH_RMII_CLK_EXT_LOOPBACK_EN depends on EXAMPLE_ETH_RMII_CLK_EXT_LOOPBACK_EN
int "RMII CLK loopback input GPIO" int "RMII CLK loopback input GPIO"
range ENV_GPIO_RANGE_MIN ENV_GPIO_RANGE_MAX range -1 ENV_GPIO_RANGE_MAX
default 32 if IDF_TARGET_ESP32P4 default 32 if IDF_TARGET_ESP32P4
default 0 default 0
help help
Set GPIO number used by RMII REF CLK input to loopback internally generated RMII CLK output. Set GPIO number used by RMII REF CLK input to loopback internally generated RMII CLK output.
You can set -1 to use internal REF CLK routing if target supports it.
See datasheet for available GPIOs. See datasheet for available GPIOs.
if SOC_EMAC_USE_MULTI_IO_MUX if SOC_EMAC_USE_MULTI_IO_MUX
@@ -14,6 +14,7 @@ from pytest_embedded import Dut
pytest.param('lan8720_esp32', 'esp32', marks=[pytest.mark.eth_lan8720]), pytest.param('lan8720_esp32', 'esp32', marks=[pytest.mark.eth_lan8720]),
pytest.param('defaults_esp32p4', 'esp32p4', marks=[pytest.mark.eth_ip101]), pytest.param('defaults_esp32p4', 'esp32p4', marks=[pytest.mark.eth_ip101]),
pytest.param('defaults_esp32p4v1', 'esp32p4', marks=[pytest.mark.eth_ip101, pytest.mark.esp32p4_rev1]), pytest.param('defaults_esp32p4v1', 'esp32p4', marks=[pytest.mark.eth_ip101, pytest.mark.esp32p4_rev1]),
pytest.param('defaults_esp32s31', 'esp32s31', marks=[pytest.mark.eth_yt8531]),
], ],
indirect=['target'], indirect=['target'],
) )
@@ -0,0 +1,27 @@
CONFIG_IDF_TARGET="esp32s31"
CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y
CONFIG_EXAMPLE_ETH_PHY_INTERFACE_RGMII=y
CONFIG_EXAMPLE_ETH_RGMII_RX_CLK_GPIO=14
CONFIG_EXAMPLE_ETH_RGMII_TX_CLK_GPIO=13
CONFIG_EXAMPLE_ETH_RGMII_PHY_REF_CLK_GPIO=-1
CONFIG_EXAMPLE_ETH_RGMII_TX_CTL_GPIO=12
CONFIG_EXAMPLE_ETH_RGMII_TXD0_GPIO=8
CONFIG_EXAMPLE_ETH_RGMII_TXD1_GPIO=9
CONFIG_EXAMPLE_ETH_RGMII_TXD2_GPIO=10
CONFIG_EXAMPLE_ETH_RGMII_TXD3_GPIO=11
CONFIG_EXAMPLE_ETH_RGMII_RX_CTL_GPIO=15
CONFIG_EXAMPLE_ETH_RGMII_RXD0_GPIO=19
CONFIG_EXAMPLE_ETH_RGMII_RXD1_GPIO=18
CONFIG_EXAMPLE_ETH_RGMII_RXD2_GPIO=17
CONFIG_EXAMPLE_ETH_RGMII_RXD3_GPIO=16
CONFIG_EXAMPLE_ETH_MDC_GPIO=5
CONFIG_EXAMPLE_ETH_MDIO_GPIO=6
CONFIG_EXAMPLE_ETH_PHY_RST_GPIO=7
CONFIG_EXAMPLE_ETH_DEINIT_AFTER_S=10
CONFIG_EXAMPLE_ETH_PHY_RST_TIMING_EN=y
@@ -0,0 +1,4 @@
CONFIG_IDF_TARGET="esp32s31"
CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y
+2 -2
View File
@@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-P4 | | Supported Targets | ESP32 | ESP32-P4 | ESP32-S31 |
| ----------------- | ----- | -------- | | ----------------- | ----- | -------- | --------- |
# Ethernet iperf Example # Ethernet iperf Example
+17 -1
View File
@@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD # SPDX-FileCopyrightText: 2022-2026 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: Unlicense OR CC0-1.0 # SPDX-License-Identifier: Unlicense OR CC0-1.0
""" """
Test case for iperf example. Test case for iperf example.
@@ -275,3 +275,19 @@ def test_esp_eth_iperf_ksz8851snl(
log_performance: Callable[[str, object], None], log_performance: Callable[[str, object], None],
) -> None: ) -> None:
test_esp_eth_iperf(dut, log_performance, spi_eth=True, udp_rx_bw_lim=10) test_esp_eth_iperf(dut, log_performance, spi_eth=True, udp_rx_bw_lim=10)
@pytest.mark.eth_yt8531
@pytest.mark.parametrize(
'config',
[
'default_yt8531_esp32s31',
],
indirect=True,
)
@idf_parametrize('target', ['esp32s31'], indirect=['target'])
def test_esp_eth_iperf_yt8531(
dut: Dut,
log_performance: Callable[[str, object], None],
) -> None:
test_esp_eth_iperf(dut, log_performance)
@@ -1,40 +1,4 @@
# Increase main task stack size # Common / performance options live in sdkconfig.defaults
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
# Config Ethernet Init # Config Ethernet Init
CONFIG_ETHERNET_SPI_SUPPORT=y CONFIG_ETHERNET_SPI_SUPPORT=y
@@ -1,40 +1,4 @@
# Increase main task stack size # Common / performance options live in sdkconfig.defaults
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
CONFIG_ETH_ENABLED=y CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y CONFIG_ETH_USE_ESP32_EMAC=y
@@ -1,40 +1,4 @@
# Increase main task stack size # Common / performance options live in sdkconfig.defaults
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
CONFIG_ETH_ENABLED=y CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y CONFIG_ETH_USE_ESP32_EMAC=y
@@ -1,43 +1,7 @@
# Common / performance options live in sdkconfig.defaults
CONFIG_IDF_TARGET="esp32p4" CONFIG_IDF_TARGET="esp32p4"
# Increase main task stack size
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
CONFIG_ETH_ENABLED=y CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y CONFIG_ETH_USE_ESP32_EMAC=y
@@ -1,44 +1,8 @@
# Common / performance options live in sdkconfig.defaults
CONFIG_IDF_TARGET="esp32p4" CONFIG_IDF_TARGET="esp32p4"
CONFIG_ESP32P4_SELECTS_REV_LESS_V3=y CONFIG_ESP32P4_SELECTS_REV_LESS_V3=y
# Increase main task stack size
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
CONFIG_ETH_ENABLED=y CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y CONFIG_ETH_USE_ESP32_EMAC=y
@@ -1,40 +1,4 @@
# Increase main task stack size # Common / performance options live in sdkconfig.defaults
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
CONFIG_ETH_ENABLED=y CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y CONFIG_ETH_USE_ESP32_EMAC=y
@@ -1,40 +1,4 @@
# Increase main task stack size # Common / performance options live in sdkconfig.defaults
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
# Config Ethernet Init # Config Ethernet Init
CONFIG_ETHERNET_SPI_SUPPORT=y CONFIG_ETHERNET_SPI_SUPPORT=y
@@ -1,40 +1,4 @@
# Increase main task stack size # Common / performance options live in sdkconfig.defaults
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
CONFIG_ETH_ENABLED=y CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y CONFIG_ETH_USE_ESP32_EMAC=y
@@ -1,40 +1,4 @@
# Increase main task stack size # Common / performance options live in sdkconfig.defaults
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
# Config Ethernet Init # Config Ethernet Init
CONFIG_ETHERNET_PHY_RTL8201=y CONFIG_ETHERNET_PHY_RTL8201=y
@@ -1,40 +1,4 @@
# Increase main task stack size # Common / performance options live in sdkconfig.defaults
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# --------------------------------
# Performance optimization options
# --------------------------------
# The lwIP and iperf tasks have a serial dependency (i.e., iperf must wait for lwIP to process packets),
# meaning that running in multi-core mode does not significantly improve performance. Additionally,
# IRAM optimizations have a more noticeable effect in single-core mode.
# However, while a single-core configuration can enhance iperf performance in controlled or isolated
# testing scenarios, it may not be optimal for real-world applications where the system also needs to
# handle additional, non-network-related tasks. In such cases, multi-core configurations might be better
# suited for balancing workloads and ensuring overall system responsiveness.
# Run FreeRTOS only on the first core
CONFIG_FREERTOS_UNICORE=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Enable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=y
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=y
# Enable Ethernet IRAM optimization
CONFIG_ETH_IRAM_OPTIMIZATION=y
# Config Ethernet Init # Config Ethernet Init
CONFIG_ETHERNET_SPI_SUPPORT=y CONFIG_ETHERNET_SPI_SUPPORT=y
@@ -0,0 +1,10 @@
# Common / performance options live in sdkconfig.defaults
CONFIG_IDF_TARGET="esp32s31"
CONFIG_ETH_ENABLED=y
CONFIG_ETH_USE_ESP32_EMAC=y
# Config Ethernet Init
CONFIG_ETHERNET_INTERNAL_SUPPORT=y
CONFIG_ETHERNET_PHY_YT8531=y
@@ -12,28 +12,11 @@
CONFIG_IDF_TARGET="esp32c2" CONFIG_IDF_TARGET="esp32c2"
# Increase main task stack size # Disable lwIP IRAM optimization (overrides sdkconfig.defaults)
CONFIG_ESP_MAIN_TASK_STACK_SIZE=7168
# Enable filesystem for console commands history storage
CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_example.csv"
CONFIG_PARTITION_TABLE_FILENAME="partitions_example.csv"
# Enable FreeRTOS stats formatting functions, needed for 'tasks' command
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
# Disable watch dog
CONFIG_ESP_INT_WDT=n
CONFIG_ESP_TASK_WDT_EN=n
# Disable lwIP IRAM optimization
CONFIG_LWIP_IRAM_OPTIMIZATION=n CONFIG_LWIP_IRAM_OPTIMIZATION=n
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=n CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION=n
# Disable Ethernet IRAM optimization # Disable Ethernet IRAM optimization (overrides sdkconfig.defaults)
CONFIG_ETH_IRAM_OPTIMIZATION=n CONFIG_ETH_IRAM_OPTIMIZATION=n
# Config Ethernet Init and Choose w5500 # Config Ethernet Init and Choose w5500
+2 -16
View File
@@ -2,9 +2,9 @@
examples/network/bridge: examples/network/bridge:
disable: disable:
- if: IDF_TARGET in ["esp32h21", "esp32h4", "esp32s31"] - if: IDF_TARGET in ["esp32h21", "esp32h4"]
temporary: true temporary: true
reason: not supported yet # TODO: [ESP32H21] IDF-12203 [ESP32H4] IDF-12712 [ESP32S31] IDF-14929 reason: not supported yet # TODO: [ESP32H21] IDF-12203 [ESP32H4] IDF-12712
disable_test: disable_test:
- if: IDF_TARGET != "esp32" - if: IDF_TARGET != "esp32"
reason: Generic functionality, no need to be run on specific targets reason: Generic functionality, no need to be run on specific targets
@@ -17,9 +17,6 @@ examples/network/bridge:
examples/network/eth2ap: examples/network/eth2ap:
disable: disable:
- if: SOC_WIFI_SUPPORTED != 1 - if: SOC_WIFI_SUPPORTED != 1
- if: IDF_TARGET in ["esp32s31"]
temporary: true
reason: not support yet # TODO: [ESP32S31] IDF-14929
depends_components: depends_components:
- esp_eth - esp_eth
- esp_wifi - esp_wifi
@@ -27,10 +24,6 @@ examples/network/eth2ap:
examples/network/simple_sniffer: examples/network/simple_sniffer:
disable: disable:
- if: SOC_WIFI_SUPPORTED != 1 - if: SOC_WIFI_SUPPORTED != 1
disable_test:
- if: IDF_TARGET in ["esp32s31"]
temporary: true
reason: lack of runners
depends_components: depends_components:
- esp_wifi - esp_wifi
- fatfs - fatfs
@@ -39,9 +32,6 @@ examples/network/simple_sniffer:
examples/network/sta2eth: examples/network/sta2eth:
disable: disable:
- if: SOC_WIFI_SUPPORTED != 1 - if: SOC_WIFI_SUPPORTED != 1
- if: IDF_TARGET in ["esp32s31"]
temporary: true
reason: not support yet # TODO: [ESP32S31] IDF-14929
depends_components: depends_components:
- esp_eth - esp_eth
- esp_wifi - esp_wifi
@@ -50,10 +40,6 @@ examples/network/sta2eth:
- http-server - http-server
examples/network/vlan_support: examples/network/vlan_support:
disable:
- if: IDF_TARGET in ["esp32s31"]
temporary: true
reason: not support yet # TODO: [ESP32S31] IDF-14929
disable_test: disable_test:
- if: IDF_TARGET not in ["esp32"] - if: IDF_TARGET not in ["esp32"]
reason: Runner uses esp32 ethernet kit reason: Runner uses esp32 ethernet kit
+2 -2
View File
@@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-H2 | ESP32-P4 | ESP32-S2 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-H2 | ESP32-P4 | ESP32-S2 | ESP32-S3 | ESP32-S31 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | -------- | -------- | -------- | --------- |
# Bridge Example # Bridge Example
(See the README.md file in the upper level 'examples' directory for more information about examples.) (See the README.md file in the upper level 'examples' directory for more information about examples.)
+2 -2
View File
@@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-S2 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-S2 | ESP32-S3 | ESP32-S31 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | -------- | --------- |
# eth2ap Example # eth2ap Example
(See the README.md file in the upper level 'examples' directory for more information about examples. To try a more complex application about Ethernet to WiFi data forwarding, please go to [iot-solution](https://github.com/espressif/esp-iot-solution/tree/release/v1.0/examples/eth2wifi).) (See the README.md file in the upper level 'examples' directory for more information about examples. To try a more complex application about Ethernet to WiFi data forwarding, please go to [iot-solution](https://github.com/espressif/esp-iot-solution/tree/release/v1.0/examples/eth2wifi).)
@@ -56,6 +56,7 @@ def _sniffer_packets_check(dut: Dut, channel: int, packet_num: int) -> None:
'esp32c61', 'esp32c61',
'esp32s2', 'esp32s2',
'esp32s3', 'esp32s3',
'esp32s31',
], ],
indirect=['target'], indirect=['target'],
) )
+2 -2
View File
@@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-S2 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-S2 | ESP32-S3 | ESP32-S31 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | -------- | --------- |
# WiFi station to "Wired" interface L2 forwarder # WiFi station to "Wired" interface L2 forwarder
+2 -2
View File
@@ -1,5 +1,5 @@
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-H2 | ESP32-H21 | ESP32-H4 | ESP32-P4 | ESP32-S2 | ESP32-S3 | | Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C5 | ESP32-C6 | ESP32-C61 | ESP32-H2 | ESP32-H21 | ESP32-H4 | ESP32-P4 | ESP32-S2 | ESP32-S3 | ESP32-S31 |
| ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | --------- | -------- | -------- | -------- | -------- | | ----------------- | ----- | -------- | -------- | -------- | -------- | --------- | -------- | --------- | -------- | -------- | -------- | -------- | --------- |
# Ethernet VLAN Support Example # Ethernet VLAN Support Example
+1
View File
@@ -52,6 +52,7 @@ env_markers =
eth_rtl8201: connected via RTL8201 ethernet transceiver eth_rtl8201: connected via RTL8201 ethernet transceiver
eth_ksz8041: connected via KSZ8041 ethernet transceiver eth_ksz8041: connected via KSZ8041 ethernet transceiver
eth_dp83848: connected via DP83848 ethernet transceiver eth_dp83848: connected via DP83848 ethernet transceiver
eth_yt8531: connected via YT8531 ethernet transceiver
eth_w5500: SPI Ethernet module with two W5500 eth_w5500: SPI Ethernet module with two W5500
eth_ksz8851snl: SPI Ethernet module with two KSZ8851SNL eth_ksz8851snl: SPI Ethernet module with two KSZ8851SNL
eth_dm9051: SPI Ethernet module with two DM9051 eth_dm9051: SPI Ethernet module with two DM9051