Commit Graph
100 Commits
Author SHA1 Message Date
Ondrej Kosta 05993b5090 feat(examples): add Ethernet sublayer example and update PTP
Add a dedicated sublayer example under examples/ethernet and enable
sublayer usage in the PTP example.
2026-08-13 13:56:57 +02:00
Ondrej Kosta ddaf9c2b79 feat(esp_netif): integrate L2TAP with Ethernet sublayer
Route L2TAP TX/RX through the iodriver provider, support offset RX
buffers in ethernetif, and extend L2TAP tests for sublayer configs.
2026-08-13 13:56:57 +02:00
Ondrej Kosta 2e79c3fd69 feat(esp_eth): add Ethernet sublayer with optional VLAN and switch
Introduce the experimental Ethernet sublayer (parent/child VLAN, optional
switch path, iodriver provider), restructure eth test apps, and document
the new APIs.
2026-08-13 13:56:57 +02:00
Ondrej Kosta 8b77c649c2 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.
2026-08-12 13:07:42 +08:00
Ondrej Kosta 0b7b3ae8f8 feat(esp_eth): enable openeth register mapping for 1000M GMAC 2026-08-12 13:07:42 +08:00
Ondrej Kosta 72a35d0f08 feat(esp_eth): add ioctl for 1G PHY master/slave mode
Needed when forcing 1000 Mbps with autonegotiation disabled.
2026-08-12 13:07:42 +08:00
Ondrej Kosta 4ddc55b7a1 Merge branch 'fix/ieee802_3_reset_time' into 'master'
fix(esp_eth): fixed Ethernet PHY HW reset timing in common PHY code

See merge request espressif/esp-idf!51680
2026-08-11 22:38:44 +08:00
Ondrej Kosta 39d7a6a022 fix(esp_eth): fixed Ethernet PHY HW reset timing in common PHY code 2026-08-11 13:57:08 +02:00
Ondrej Kosta 4d9524b308 Merge branch 'fix/ethernet_init_ver' into 'master'
ci(esp_eth): use fixed version of eth_test_app

See merge request espressif/esp-idf!51555
2026-08-06 16:51:05 +08:00
Ondrej Kosta fb07be93ba ci(esp_eth): use fixed version of eth_test_app 2026-08-06 15:03:08 +08:00
Ondrej Kosta 4431bce564 Merge branch 'feat/eth_test_component' into 'master'
feat(esp_eth): updated test_apps to use Ethernet test component

See merge request espressif/esp-idf!48977
2026-06-08 15:35:38 +08:00
Ondrej Kosta 2be2a1370e 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-06-04 12:59:18 +02:00
Ondrej Kosta fa05720f6c feat(ci): support downloading extra app artifacts in pytest
Add app_extra S3 artifact type, extend idf-ci download plumbing, and
expose a download_app_extra pytest fixture for managed_components deps.
2026-06-04 12:59:18 +02:00
Ondrej Kosta 7f65507c3b Merge branch 'feat/generic_phy_1000m' into 'master'
feat(esp_eth): generic 802.3 driver to check if 1000M is supported

See merge request espressif/esp-idf!48959
2026-06-01 19:47:29 +08:00
Ondrej Kosta 2765aa7ec9 Merge branch 'contrib/github_pr_18642' into 'master'
fix(eth): use stored base_increment when computing PTP addend (GitHub PR)

Closes IDFGH-17700

See merge request espressif/esp-idf!48902
2026-05-28 16:11:59 +08:00
Ondrej Kosta 2fbc3fb588 feat(esp_eth): generic 802.3 driver to check if 1000M is supported 2026-05-27 11:47:12 +02:00
Ondrej Kosta 41976c732e fix(esp_eth): fixed build issues introduced by EMAC S31 support 2026-05-25 16:06:53 +02:00
Ondrej Kosta fc41e66e47 Merge branch 'feat/gmac_s31' into 'master'
Feat/gmac s31

Closes IDF-14730

See merge request espressif/esp-idf!48029
2026-05-21 22:51:44 +08:00
Ondrej Kosta 6a82c094fb fix(esp_clk_tree): temporarily disabled gating of all ref_clks on ESP32S31 2026-05-21 13:18:57 +02:00
Ondrej Kosta edbf8856ae feat(esp_eth): add ESP32-S31 EMAC support
Add internal EMAC support for ESP32-S31, including:
- HAL/LL layer: emac_ll, emac_hal, emac_clk, emac_periph for S31
- SOC layer: register structs, soc_caps, peripherals linker script,
  interrupt definitions
- MAC driver: clock source configuration via Kconfig, GPIO/DMA
  adaptations, PHY register defs for clause-45 MDIO
- Ethernet examples updated for S31 (basic, build-test-rules, PTP
  readme)
- Refactored existing ESP32/ESP32-P4 EMAC code for shared patterns
  (emac_clk extraction, struct alignment, periph descriptor cleanup)
2026-05-21 15:59:42 +08:00
Ondrej Kosta c7d6c41198 feat(clk_tree): support derived PLL clocks
Add a generic derived-PLL clock engine to esp_clk_tree_common that
handles acquire/release, mux selection, and divider programming for
target-defined derived clocks. Per-target descriptors (ESP32-P4,
ESP32-S31) plug into the engine via
esp_clk_tree_get_derived_clk_desc().
2026-05-21 15:59:42 +08:00
Ondrej Kosta f086ad4761 Merge branch 'feat/ptpd_2upstream' into 'master'
Feat/ptpd 2upstream

See merge request espressif/esp-idf!47246
2026-04-10 15:11:39 +08:00
Ondrej Kosta 36fc8b97cb feat(ptpd): updated ptpd to upstream 2026-04-07 10:48:58 +02:00
Ondrej Kosta bac6f95833 Merge branch 'fix/ci_eth_to_ip101' into 'master'
ci(esp_eth): changed runner to balance load in CI

See merge request espressif/esp-idf!47198
2026-04-02 13:40:45 +08:00
Ondrej Kosta b8c28abd0e ci(esp_eth): changed runner to balance load in CI 2026-04-01 10:36:37 +02:00
Ondrej Kosta b67ee93a87 Merge branch 'fix/clock_ptp' into 'master'
Adding PTP_CLOCK instance to IDF Clock system

Closes IDF-13906

See merge request espressif/esp-idf!45962
2026-04-01 13:31:00 +08:00
Ondrej Kosta ed2e6735ff feat(esp_libc): refactored POSIX timers get/set functions
- Added sys/timex.h and clock_adjtime API
2026-03-31 22:32:33 +08:00
Ondrej Kosta bbd541c6a9 Merge branch 'fix/eth_init_component' into 'master'
fix(eth/examples): fixed ethernet_init dependency to v1.3.0

See merge request espressif/esp-idf!46921
2026-03-26 23:27:09 +08:00
Ondrej Kosta 0f8dd0cf5b fix(eth/examples): fixed ethernet_init dependency to v1.3.0 2026-03-23 12:30:11 +01:00
Ondrej Kosta ed85f7335f Merge branch 'fix/emac_pll' into 'master'
docs(esp_eth): added test to verify A/MPLL configuration

Closes IDF-11629

See merge request espressif/esp-idf!45978
2026-03-18 14:20:52 +08:00
Ondrej Kosta 505a96964a docs(esp_eth): added test to verify A/MPLL configuration)
Updated docs to state there could be conflict between PSRAM MPLL configuration and EMAC
2026-03-16 17:05:50 +08:00
Ondrej Kosta e03e9ae97b Merge branch 'feat/eth_ci_improvements' into 'master'
Feat/eth ci improvements

Closes IDF-15255

See merge request espressif/esp-idf!45419
2026-02-25 18:00:06 +08:00
Ondrej Kosta d3d5b239fb feat(esp_eth): Ethernet test refactor
ETH tests use setUp-tearDown to init/deinit resources
2026-02-25 08:42:49 +01:00
Ondrej Kosta ec3696a118 Merge branch 'fix/bridge_test' into 'master'
Made ETH bridge test to be more robust

See merge request espressif/esp-idf!43082
2026-01-21 15:34:07 +08:00
Ondrej Kosta a538275c31 Merge branch 'fix/eth_example_clk_loop' into 'master'
fix(esp_eth): fixed basic example RMII CLK loopback config

See merge request espressif/esp-idf!44988
2026-01-19 16:38:06 +08:00
Ondrej Kosta 2598c90e4f ci(esp_eth): update ETH bridge test to be more robust 2026-01-16 11:15:34 +01:00
Ondrej Kosta a45f42de7c Merge branch 'feat/esp32p4_eco5_emac' into 'master'
Added PTP PPS Feature

Closes IDF-13513

See merge request espressif/esp-idf!44345
2026-01-13 16:24:09 +08:00
Ondrej Kosta 6b40cae01c Merge branch 'ci/eth_10m_loopback' into 'master'
fix(esp_eth): made 10M loopback test less strict

Closes IDFCI-7039 and IDFCI-7736

See merge request espressif/esp-idf!44886
2026-01-12 22:48:19 +08:00
Ondrej Kosta f8b055bd11 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-12 17:13:25 +08:00
Ondrej Kosta 3777138e85 fix(esp_eth): fixed basic example RMII CLK loopback config 2026-01-09 15:37:05 +01:00
Ondrej Kosta 30b61e8d76 fix(esp_eth): made 10M loopback test less strict 2026-01-07 16:29:31 +01:00
Ondrej Kosta c16c4abfda Merge branch 'fix/enable_p4v3_tests' into 'master'
fix(ci): re-enabled ESP32P4 tests on different HW vers

Closes ITOPS-204

See merge request espressif/esp-idf!44167
2025-12-22 16:10:41 +08:00
Ondrej Kosta 0bf0b8631e fix(esp_hal_cam): fixed isp_ll_shadow_update_ccm number of args. for chips rev < 3 2025-12-15 09:44:39 +01:00
Ondrej Kosta 2659271994 fix(ci): re-enabled ESP32P4 tests on different HW vers 2025-12-15 09:44:39 +01:00
Ondrej Kosta 05012bdf3d Merge branch 'fix/p4_fixed_mdc_config' into 'master'
fix(esp_eth): fixed ESP32P4 CSR clock range used to determine MDC

Closes IDFGH-16923

See merge request espressif/esp-idf!44063
2025-12-12 23:58:30 +08:00
Ondrej Kosta ae3fbe1ada fix(esp_eth): fixes EMAC MDC out of the range issue
Closes https://github.com/espressif/esp-idf/issues/17984
2025-12-11 17:30:30 +01:00
Ondrej Kosta b111c84f9e Merge branch 'feat/upt_tests_new_runners' into 'master'
feat(ci): updated Ethernet test to align with new runners

Closes IDF-14823

See merge request espressif/esp-idf!43573
2025-11-26 17:52:43 +08:00
Ondrej Kosta 4e6b35ca9e feat(ci): updated Ethernet tests to align with new runners 2025-11-25 17:26:49 +01:00
Ondrej Kosta 1e6f49d178 Merge branch 'chore/update-protocol-eth-connect' into 'master'
feat(protocol_examples_common): Use Ethernet Init component

Closes IDF-14227

See merge request espressif/esp-idf!42265
2025-11-20 17:28:17 +08:00
Ondrej Kosta e3af4267f1 Merge branch 'fix/multicast_filter_test' into 'master'
fix(esp_eth): maked esp_eth_test_l2 more robust

Closes IDFCI-6131

See merge request espressif/esp-idf!43328
2025-11-18 16:04:12 +08:00
Ondrej Kosta f39c0633d3 fix(esp_eth): maked esp_eth_test_l2 more robust 2025-11-13 09:53:49 +01:00
Ondrej Kosta 2cb9c7177e Merge branch 'fix/bridge_example' into 'master'
fix(examples): fixed bridge example test endnode to host send

Closes IDFCI-2994

See merge request espressif/esp-idf!42928
2025-11-03 11:26:10 +08:00
Ondrej Kosta 86c9decedc Merge branch 'fix/eth_connect' into 'master'
fix(esp_eth): made LAN8720 test write register function more robust

See merge request espressif/esp-idf!42856
2025-10-27 18:57:12 +08:00
Ondrej Kosta eb7c6a0df4 fix(examples): fixed bridge example test endnode to host send 2025-10-27 10:38:20 +01:00
Ondrej Kosta 0640d918bb fix(esp_eth): made LAN8720 test write register function more robust 2025-10-23 15:30:15 +02:00
Ondrej Kosta 6e160e2e47 fix(examples): fixed examples ethernet_init dependency 2025-10-21 13:06:04 +02:00
Ondrej Kosta 08e4aba740 Merge branch 'fix/eth_connect' into 'master'
fix(protocol_examples_common): Temporal fix of backwards compatibility

See merge request espressif/esp-idf!42398
2025-10-08 17:06:47 +08:00
Ondrej Kosta 8619f96018 fix(protocol_examples_common): Temporal fix of backwards compatibility 2025-10-07 13:28:45 +02:00
Ondrej Kosta 61aaaf3a8b Merge branch 'feat/remove_eth_drivers' into 'master'
Feat/remove eth drivers

Closes IDF-13553 and IDF-5865

See merge request espressif/esp-idf!42021
2025-09-29 10:14:42 +08:00
Ondrej Kosta d622d4d9ac feat(esp_eth): removed SPI Ethernet and PHY drivers from IDF 2025-09-28 16:19:42 +02:00
Ondrej Kosta 9662963a3d fix(esp_eth): fixed ETH builds by forcing Ethernet init ver 2025-09-25 07:28:12 +02:00
Ondrej Kosta 64df28678c Merge branch 'fix/update-eth-init-calls' into 'master'
fix(ethernet_init): Update Ethernet Init Calls

See merge request espressif/esp-idf!41916
2025-09-23 22:02:11 +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 7a35466da7 Merge branch 'feat/phy802_rst' into 'master'
feat(esp_eth): changed ETH PHY API of esp_eth_phy_802_3_reset_hw

Closes IDF-11362

See merge request espressif/esp-idf!41759
2025-09-17 14:20:27 +08: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
Ondrej Kosta 5aab43eb21 Merge branch 'contrib/github_pr_16869' into 'master'
feat(examples): improved example for Ethernet SPI polling mode without interrupt (GitHub PR)

Closes IDFGH-15933

See merge request espressif/esp-idf!41071
2025-08-18 14:05:52 +08:00
Ondrej Kosta b62c0feb3b feat(soc): added emac_reg.h to hw_ver2 2025-08-14 08:54:04 +02:00
Ondrej Kosta 3fb1f9add3 Merge branch 'feat/p4_emac_sleep' into 'master'
feat(esp_eth): added EMAC sleep retention for ESP32P4

Closes IDF-9919

See merge request espressif/esp-idf!40385
2025-08-14 02:52:29 +08:00
Ondrej Kosta b3e2f89f49 feat(esp_eth): added EMAC sleep retention for ESP32P4 2025-08-11 12:53:24 +02:00
Ondrej Kosta c76202c0a8 Merge branch 'fix/bridge_test_ssh' into 'master'
fix(esp_eth): bridge test to use SSH key when connect to endnode

Closes IDFCI-2994

See merge request espressif/esp-idf!40540
2025-07-16 17:37:38 +08:00
Ondrej Kosta 3bd6e5d4bb fix(esp_eth): bridge test to use SSH key when connect to endnode 2025-07-15 12:26:05 +02:00
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
Ondrej Kosta eba9549bbc Merge branch 'feat/eth_mac_filter' into 'master'
feat(esp_eth): added option to set MAC filter for mcast

Closes IDF-12503 and IDFGH-14897

See merge request espressif/esp-idf!36944
2025-04-30 19:38:02 +08:00
Ondrej Kosta e941910c0f feat(esp_eth): Added destination MAC address filter configuration interface 2025-04-29 13:54:56 +02:00
Ondrej Kosta 918e1823f4 Merge branch 'contrib/github_pr_15637' into 'master'
fix(esp_eth): Fix order of fields in ETH_ESP32_EMAC_DEFAULT_CONFIG on P4 (GitHub PR)

Closes IDFGH-14928

See merge request espressif/esp-idf!37979
2025-04-01 15:06:14 +08:00
Ondrej Kosta 6d9fdcf96f Merge branch 'fix/rmii_ref_ckl' into 'master'
fix(esp_eth): fixed ESP32P4 EMAC REF RMII CLK output mode

See merge request espressif/esp-idf!37138
2025-03-17 17:18:07 +08:00
Ondrej Kosta 83f1ccb492 fix(esp_eth): fixed emac_ll_pause_frame_enable for ESP32P4 2025-03-12 09:29:17 +00:00
Ondrej Kosta f3a3988649 fix(esp_eth): fixed ESP32P4 EMAC REF RMII CLK output mode
fixed units returned and used by periph_rtc_mpll_freq_set function
2025-03-12 09:29:17 +00:00
Ondrej Kosta 7c5b34f568 Merge branch 'bugfix/l2mem_buffer' into 'master'
fix(esp_system): removed L2MEM buffer enable for P4

Closes IDFCI-2755

See merge request espressif/esp-idf!37640
2025-03-11 20:51:37 +08:00
Ondrej Kosta ae10c1333d fix(esp_system): removed L2MEM buffer enable for P4 2025-03-11 14:53:29 +08:00
Ondrej Kosta b5aef58afe Merge branch 'bugfix/ci_eth_ip' into 'master'
iperf fix on SH runners

Closes IDFCI-2718

See merge request espressif/esp-idf!36661
2025-02-18 19:51:54 +08:00
Ondrej Kosta 39f34a65a9 Merge branch 'bugfix/ethernet_example_netif_glue_assignment' into 'master'
fix(ethernet_basic): Fix second Ethernet device not receiving IP address

Closes IDFGH-14551

See merge request espressif/esp-idf!36778
2025-02-12 22:38:14 +08:00
Ondrej Kosta 45c186770c Merge branch 'fix/eth_example_stat_ip' into 'master'
fix(esp_eth): fixed Static IP example for Ethernet

Closes IDFCI-2707

See merge request espressif/esp-idf!36821
2025-02-12 20:19:16 +08:00
Ondrej Kosta 342202204c fix(esp_eth): init Ethernet after repl init in iperf example 2025-02-11 12:16:31 +01:00
Ondrej Kosta f07e88de97 fix(esp_eth): fixed Static IP example for Ethernet
Fixed IP event handler unregistering for Ethernet
2025-02-10 11:08:50 +01:00
Ondrej Kosta e188afdacf Merge branch 'docs/eth_memory_consideration' into 'master'
Non-functional Ethernet updates

Closes IDFGH-13346 and IDF-11736

See merge request espressif/esp-idf!36219
2025-01-27 19:24:34 +08:00
Ondrej Kosta d30e4d9960 Merge branch 'feat/eth_gpio' into 'master'
feat(esp_eth): new gpio init strategy

Closes IDF-11128

See merge request espressif/esp-idf!35827
2025-01-22 20:20:07 +08:00
Ondrej Kosta 5429cc1057 ci(esp_eth): added ESP32P4 as target for ETH tests 2025-01-15 22:53:33 +08:00
Ondrej Kosta 83fecdd5d3 change(esp_eth): new gpio init strategy 2025-01-15 22:53:33 +08:00
Ondrej Kosta c3a4c86970 docs(esp_eth): added EMAC Memory Considerations section 2025-01-10 09:28:32 +01:00
Ondrej Kosta 4762db2dd8 Merge branch 'ci/iperf_esp32p4' into 'master'
ci(esp_eth): added ESP32P4 to iperf CI test

See merge request espressif/esp-idf!35540
2025-01-10 15:33:29 +08:00
Ondrej Kosta 5c9da4a13b fix(esp_eth): removed deadcode from emac 2025-01-07 17:01:36 +01:00
Ondrej Kosta b07db010ac ci(esp_eth): added ESP32P4 to iperf CI test
Updated (increased) ETH_THROUGHPUT_SPI_ETH limits.
Improved iperf optimization description
2025-01-07 12:41:54 +01:00
Ondrej Kosta 7f07c9de44 Merge branch 'feature/ptp' into 'master'
Feature/ptp

Closes IDFGH-12397

See merge request espressif/esp-idf!33058
2024-11-08 15:10:07 +08:00
Ondrej Kosta d2b1202d5a feat(esp_eth): added HW Time Stamping support for ESP32P4
Added mechanism to L2 TAP to retreive time stamp

Added PTP time synchronization example
2024-11-07 15:01:24 +08:00
Ondrej Kosta e39f0a1d9a Merge branch 'feat/generic_phy' into 'master'
Feat/generic phy

Closes IDF-11249 and DOC-9102

See merge request espressif/esp-idf!33708
2024-10-15 21:39:27 +08:00
Ondrej Kosta 0738314308 feat(esp_eth): added new generic PHY driver 2024-10-11 10:14:53 +02:00