Scramble Tools
eaa9ae6f8f
fix(esp_eth): avoid per-frame descriptor ring scan in RX task
...
The RX task's drain loop called emac_esp_dma_get_remain_frames()
after every received frame, an O(backlog) walk of the descriptor
ring with a cache invalidate per descriptor. Under sustained load
the scan cost grows with the backlog, so the deeper the backlog
gets, the more time goes into scanning instead of draining, until
the task can no longer keep up and the DMA drops frames
continuously (measured ~3000 missed frames/s at 16k pkt/s
bidirectional on ESP32-P4 with 20 descriptors).
The loop only needs to know whether at least one more complete
frame is waiting, which emac_esp_dma_alloc_recv_buf() already
answers by checking a single descriptor, so exit the loop on that
instead. The full remain-frames count is kept only under
CONFIG_ETH_SOFT_FLOW_CONTROL, which genuinely needs it for the
pause-frame watermarks.
Related to https://github.com/espressif/esp-idf/issues/18800
2026-09-23 08:15:07 +02:00
Ondrej Kosta
b5fb8a6d79
fix(emac): correct DMA status interrupt bit masks
...
Align fatal-bus-error through normal-summary status flags with
dmastatus bit positions, and fix the FATAL_BUS_ERROR typo.
2026-09-18 12:11:39 +02:00
Ondrej Kosta
ed6d83b3af
fix(esp_eth): fixed Ethernet PHY HW reset timing in common PHY code
2026-09-14 09:01:46 +02:00
Euripedes Rocha
de07da4a74
Merge branch 'fix/ethernet_init_ver_v6.0' into 'release/v6.0'
...
ci(esp_eth): use fixed version of eth_test_app (v6.0)
See merge request espressif/esp-idf!51588
2026-09-14 09:00:54 +02:00
Dhimas Ardinata
dee4e774e0
fix(esp_eth): make openeth ISR log DRAM-safe
...
Keep the ISR from touching flash-resident log strings while cache is disabled.
Closes #18644
2026-08-20 21:56:12 -03:00
Ondrej Kosta
5fc838f156
ci(esp_eth): use fixed version of eth_test_app
2026-08-06 12:15:36 +02:00
morris
44e2e2477f
refactor(emac): move sleep retention config into driver layer
...
Keep the EMAC regdma retention definitions in esp_eth so the backup
layout stays aligned with driver-owned sleep retention behavior.
2026-07-10 16:04:09 +08:00
Ondrej Kosta
6eb451f40f
feat(esp_eth): update test_apps to use Ethernet test component
...
Move test logic into the eth_test_app managed component and slim down
the test_apps main target and pytest suite accordingly.
2026-07-08 08:01:45 +02:00
Chen Jichang
d1a64bffc0
refactor(clk_tree): use general api to enable the clk
2026-05-15 13:55:37 +08:00
Guilherme Ferreira
186d918c50
ci(esp_eth): add C++ regression guard for ethernet macros
2026-05-12 17:57:42 +08:00
heianto
158501bd28
fix(esp_eth): Fixed designated initializer order in ETH_ESP32_EMAC_DEFAULT_CONFIG
...
Merges https://github.com/espressif/esp-idf/pull/18275
Signed-off-by: Guilherme Ferreira <guilherme.ferreira@espressif.com >
2026-05-12 17:57:42 +08:00
Fu Hanxi
ad1d17a794
ci: rename eco tags to revision
2026-04-09 10:43:34 +02:00
Ondrej Kosta
49c903a1a5
feat(esp_eth): Ethernet test refactor
...
ETH tests use setUp-tearDown to init/deinit resources
2026-03-23 09:34:07 +01:00
igor.udot
e2a8bbe639
ci: update build-test-rules to use common_components
2026-03-20 15:53:26 +08:00
Evgeny Torbin
0070b687b5
ci: remove unused test cases
2026-03-12 12:34:23 +01:00
hebinglin
21a6537e08
change(esp_driver): set cases with toppd check only run in esp32c5eco3 rather than eco2
2026-02-01 11:59:16 +08:00
Song Ruo Jing
89da3742b8
refactor(clk): split clock HAL into separate component
2026-01-31 22:32:37 +08:00
Jiang Jiang Jian
d1d6858c3d
Merge branch 'ci/eth_10m_loopback_v6.0' into 'release/v6.0'
...
fix(esp_eth): made 10M loopback test less strict (v6.0)
See merge request espressif/esp-idf!45023
2026-01-30 14:30:11 +08:00
Ondrej Kosta
b27da510ff
feat(esp_eth): added PTP EMAC PPS0 support on ESP32P4v3
...
feat(esp_eth): added options to configure PTP module
feat(esp_eth): removed all PTP ioctl commands and created API
2026-01-13 12:16:21 +01:00
Ondrej Kosta
e5ea21f13b
fix(esp_eth): made 10M loopback test less strict
2026-01-12 16:10:59 +01:00
Ondrej Kosta
2f5e9cd9b4
fix(ci): re-enabled ESP32P4 tests on different HW vers
2025-12-22 14:43:57 +01:00
Mahavir Jain
7da79a653c
Merge branch 'feature/mbedtls_psa_migration_v6.0' into 'release/v6.0'
...
feat(mbedtls): PSA Migration to release v6.0
See merge request espressif/esp-idf!43323
2025-12-21 13:52:48 +05:30
Ashish Sharma
1e6621d285
fix: increase default stack size for esp_eth test apps
2025-12-19 07:29:08 +08:00
Ondrej Kosta
20a004f141
fix(esp_eth): fixes EMAC MDC out of the range issue
...
Closes https://github.com/espressif/esp-idf/issues/17984
2025-12-16 14:12:17 +01:00
Song Ruo Jing
62899cbba6
refactor(gpio): split GPIO HAL into separate component
...
cleaned up some includes in GPIO peripheral files
2025-12-08 14:33:26 +08:00
Ondrej Kosta
643b7c93c1
feat(ci): updated Ethernet tests to align with new runners
2025-11-26 13:24:32 +01:00
Euripedes Rocha
ec0ef59535
Merge branch 'chore/update-protocol-eth-connect_v6.0' into 'release/v6.0'
...
feat(protocol_examples_common): Use Ethernet Init component (v6.0)
See merge request espressif/esp-idf!43554
2025-11-21 08:22:17 +01:00
armando
714b022a43
ci(p4): disable p4 rev3 invalid tests temporarily
2025-11-21 02:48:05 +00:00
glmfe
e187d3b259
feat(protocol_examples_common): Use Ethernet Init component
...
- Refactored protocol_examples_common to use ethernet_init component
2025-11-20 18:57:03 +08:00
Ondrej Kosta
30919c13ec
fix(esp_eth): maked esp_eth_test_l2 more robust
2025-11-18 10:13:04 +01:00
Jiang Jiang Jian
ba8aecc01b
Merge branch 'fix/eth_connect_v6.0' into 'release/v6.0'
...
fix(esp_eth): made LAN8720 test write register function more robust (v6.0)
See merge request espressif/esp-idf!42930
2025-11-18 12:24:50 +08:00
Frantisek Hrbata
7eb762611f
fix(esp_eth/cmake): avoid using BUILD_COMPONENTS build property for IDF_BUILD_V2
...
IDF_BUILD_V2 does not have BUILD_COMPONENTS build property. Therefore,
when IDF_BUILD_V2 is defined, use a generator expressions instead.
The inclusion of esp_eth_netif_glue.c, which relies on the presence of
the esp_netif component, should ideally be managed by a configuration
option. The same applies to the requirements for esp_eth. Currently,
only a basic adjustment has been made to enable the inclusion of esp_eth
in cmakev2.
Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com >
2025-11-04 07:48:13 +01:00
Ondrej Kosta
eeadc96949
fix(esp_eth): made LAN8720 test write register function more robust
2025-11-04 04:18:44 +01:00
wuzhenghui
065dd70056
change(esp_hw_support): move ESP_SLEEP_POWER_DOWN_CPU to Kconfig
2025-10-14 16:33:30 +08:00
Ondrej Kosta
d622d4d9ac
feat(esp_eth): removed SPI Ethernet and PHY drivers from IDF
2025-09-28 16:19:42 +02:00
Marius Vikhammer
484d2c5c2f
fix(system): fixed issues with unused variable warnings when compiling with NDEBUG
2025-09-19 15:42:07 +08:00
Ondrej Kosta
bc421db41b
Merge branch 'feat/kconfig_clk_rm' into 'master'
...
feat(esp_eth): removed RMII CLK Kconfig option
Closes IDF-9724
See merge request espressif/esp-idf!41853
2025-09-19 15:35:50 +08:00
Ondrej Kosta
5c5eb99eab
Merge branch 'fix/emac_test_tmo' into 'master'
...
fix(ci): increased timeout for ethernet_int_emac_test
Closes IDFCI-3118
See merge request espressif/esp-idf!41909
2025-09-17 20:20:32 +08:00
Ondrej Kosta
5aa97623c1
feat(esp_eth): removed RMII CLK Kconfig option
2025-09-17 11:46:06 +02:00
Ondrej Kosta
2ed090ba3d
feat(esp_eth): changed ETH PHY API of esp_eth_phy_802_3_reset_hw
2025-09-16 17:54:35 +08:00
Ondrej Kosta
f7c4178103
fix(ci): increased timeout for ethernet_int_emac_test
2025-09-15 13:55:25 +02:00
Marek Fiala
9d35d63651
feat(cmake): Update minimum cmake version to 3.22 (whole repository)
2025-08-19 14:44:32 +02:00
Ondrej Kosta
b3e2f89f49
feat(esp_eth): added EMAC sleep retention for ESP32P4
2025-08-11 12:53:24 +02:00
Marius Vikhammer
bf84ab652a
change(test_utils): moved test_utils component to tools/test_apps/components/
2025-07-21 14:05:50 +08:00
nilesh.kale
5cc874068d
feat(esp_http_client): added event HTTP_EVENT_ON_STATUS_CODE
...
This commit added event HTTP_EVENT_ON_STATUS_CODE and
acquire response status code before header or data.
2025-07-08 17:45:18 +05:30
Aditya Patwardhan
f4e8813d45
Merge branch 'contrib/github_pr_15972' into 'master'
...
feat(esp_http_client): Event to signal last header downloaded (GitHub PR)
See merge request espressif/esp-idf!39309
2025-06-10 13:08:10 +05:30
Ondrej Kosta
48b37dd56e
Merge branch 'contrib/github_pr_16016' into 'master'
...
Enable Timestamping for Non-PTP Ethernet frames (GitHub PR)
Closes IDFGH-15359
See merge request espressif/esp-idf!39581
2025-06-09 16:58:07 +08:00
Frangen, Leon
eae1f3c302
feat(esp_eth): Enable rx/tx timestamp for non-PTP frames via ioctl
2025-06-06 11:35:10 +02:00
Richard Allen
30758d9beb
feat(esp_http_client): Event to signal last header download
...
When parsing ND-JSON streams, this is needed to indicate the
point when the ND-JSON stream is considered open, which
occurs just after the last HTTP_EVENT_ON_HEADER.
ND-JSON stream clients cannot rely on the first HTTP_EVENT_ON_DATA,
since that is only triggered by an event, which are optional and
may never be sent, or only sent well after the last HTTP_EVENT_ON_HEADER.
Closes #15952
2025-05-28 08:50:28 -05:00
wuzhenghui
65b7e70564
feat(driver): support acquire/release clock source dependency for all drivers
2025-05-27 21:21:38 +08:00