Commit Graph

143 Commits

Author SHA1 Message Date
Jiang Jiang Jian
093f04510f Merge branch 'bugfix/ip101_reset_timing_v4.4' into 'release/v4.4'
fix(esp_eth): ip101-specific reset_hw to match reset timings from datasheet (v4.4)

See merge request espressif/esp-idf!29015
2024-03-04 10:40:47 +08:00
Ondrej Kosta
e2e03ced38 fix(esp_eth): W5500 receive function to return copy_len 2024-02-12 10:36:29 +01:00
Bogdan Kolendovskyy
bf73313e42 fix(esp_eth): ip101-specific reset_hw to match reset timings from datasheet
IP101 requires 10ms reset assertion time and 10ms post-reset delay to properly initialize.
2024-02-09 15:22:02 +01:00
Ondrej Kosta
b244b6e86b ci(esp_eth): enabled Ethernet IP101 runner back
Moved LAN8720 test to different runner
2024-01-29 08:26:28 +01:00
Fu Hanxi
d225370c31
ci: comment ip101 test case
otherwise assign test will fail
2024-01-23 08:13:17 +01:00
Ondrej Kosta
891edc0f0d bugfix(esp_eth): improved error handling of _recv_buf
fixed W5500 flush_recv_frame function
2023-11-23 17:22:42 +01:00
Ondrej
409c7e5610 Improved emac rx task code to suppress Coverity false positive memory leak indication 2023-11-20 12:50:49 +01:00
Ondrej
9374a2d9ac esp_eth: receive buffer allocation optimization
Receive buffers are allocated with a size equal to actual received frame size
2023-11-20 12:32:03 +01:00
David Čermák
b96c98accf Merge branch 'bugfix/eth_lan8720_ci_v4.4' into 'release/v4.4'
esp_eth: start/stop and L2 test stability improvements (v4.4)

See merge request espressif/esp-idf!22322
2023-06-13 16:42:07 +08:00
Mahavir Jain
1d61e300ac
tests: update Root certificate for the test endpoints
Use Root certificate (`DigiCert Global Root G2`) for the
`dl.espressif.com` and `espressif.com` test endpoints.

This fixes the test failure introduced due to renewal of
the intermediate certificate.
2023-05-17 15:28:46 +05:30
Ondrej
88a2afc034 esp_eth: DM9051 stop/start issue fixed 2023-03-21 16:32:46 +00:00
Ondrej
fc09ea7b19 esp_eth: allowed DM9051 to receive multicast packets
Removed extra PHY status link checks from DM9051 MAC layer
2023-03-21 16:28:51 +00:00
Ondrej Kosta
a0c87d63e3 esp_eth: possible start/stop issue fixed
ESP32 EMAC could hang when stopped/started multiple times at 10Mbps speed mode
2023-02-10 16:23:20 +01:00
Omar Chebib
049d21bb12 C/Cxx: unify static assertions with the macro ESP_STATIC_ASSERT
Closes https://github.com/espressif/esp-idf/issues/9938
2022-12-05 18:16:08 +08:00
Marius Vikhammer
90e58c3721 docs: fix all doxygen warnings
Doxygen warnings would previously not result in a failed pipeline.
Fixed this as well as all current warnings.
2022-07-05 11:14:40 +08:00
Ondrej Kosta
ba62cbc04f Fixed Ethernet lwIP netif error indication 2022-04-06 10:44:31 +00:00
Ondrej Kosta
7768c389ad Created EMAC start/stop stress test under heavy traffic 2022-03-10 10:15:34 +01:00
Ondrej Kosta
d53094bdc0 esp_eth: EMAC start/stop optimization 2022-03-10 10:15:34 +01:00
Ondrej Kosta
74ba1175b6 Fixed ESP32 EMAC driver insufficient TX buffer size which could followed esp_eth_stop and esp_eth_start sequence 2021-12-21 14:04:55 +01:00
David Čermák
b98a2a41e0 Merge branch 'bugfix/ksz8081_loopback' into 'release/v4.4'
KSZ8081 Loopback Callback Fix

See merge request espressif/esp-idf!16081
2021-12-02 07:29:31 +00:00
David Čermák
d5c607c54a Merge branch 'bugfix/dm9051_tx_throughput_rate_optimization_v4.4' into 'release/v4.4'
esp_eth: optimize dm9051 Tx throughput(v4.4)

See merge request espressif/esp-idf!15885
2021-12-02 06:51:22 +00:00
Christian Fischerauer
26baeaca60 esp_eth: add loopback for ksz8081 2021-11-29 20:16:35 +08:00
Ondrej Kosta
018bc054a5 Merge branch 'bugfix/LAN8720_reset_assertion_v4.4' into 'release/v4.4'
Increased LAN8720 ETH-PHY reset assertion time (v4.4)

See merge request espressif/esp-idf!15825
2021-11-10 20:39:58 +00:00
Tian Sen Wen
2c24beca04 esp_eth: optimize dm9051 Tx throughput 2021-11-10 17:08:21 +08:00
Ondrej Kosta
43b62a5b62 Copyright message fix for 'Increased LAN8720 ETH-PHY reset assertion time' 2021-11-05 11:39:04 +01:00
Frank Sautter
5f9ae3510a Increased LAN8720 ETH-PHY reset assertion time (IDFGH-6018)
Increase reset assertion time from 100µs (as specified minimum in the datasheet) to 150µs.
Some specimen of the LAN8720 need the reset signal asserted longer than 100µs to initialise properly. Otherwise they are in a zombie state where they are establishing and loosing an Ethernet link once in a seconds interval.
2021-11-05 11:35:35 +01:00
Ondrej Kosta
484d5c8491 esp_eth: KSZ8851SNL, enable Rx multicast in MAC filter
Closes https://github.com/espressif/esp-idf/issues/7750
2021-11-05 11:23:14 +01:00
Marius Vikhammer
108f85f8b3 ci: update cert used for esp_eth test 2021-10-21 10:05:56 +08:00
David Čermák
d1ac84e68e Merge branch 'bugfix/lwip_move_icmp_tests_from_eth' into 'master'
CI/lw-ip: Move ICMP test cases from eth component

Closes IDF-3863

See merge request espressif/esp-idf!15200
2021-10-01 07:06:32 +00:00
David Cermak
8b45ac0fbc lwip: Add ping test case (moved from eth component) 2021-09-22 15:22:18 +02:00
Ondrej Kosta
76326e8268 esp_eth: add PHY loopback control via esp_eth_ioctl
Fixed esp_eth_ioctl command's data argument non-standard handling
2021-09-14 09:13:54 +02:00
morris
54abf1d0b9 Merge branch 'ci/esp_eth_new_runners' into 'master'
feature/ci/esp_eth: new app_test and runner

Closes IDF-3561 and IDFGH-1736

See merge request espressif/esp-idf!14392
2021-09-09 04:16:08 +00:00
David Čermák
39b7d3e13f Merge branch 'bugfix/eth_dm9051_not_responding' into 'master'
esp_eth: Fix dm9051 Rx interrupt processing

Closes IDFGH-4598

See merge request espressif/esp-idf!15073
2021-09-08 14:25:27 +00:00
SalimTerryLi
14a6ab4a8e
esp_eth: new test_app: emac layer tests 2021-09-08 20:00:14 +08:00
David Cermak
676cd99c42 esp_eth: Fix dm9051 Rx interrupt processing
* Disable Tx interrupts to fix race condition of missing Rx interrupt
* Check if GPIO interrupt is asserted periodically if the ISR event missed

Closes https://github.com/espressif/esp-idf/issues/6414
2021-09-07 16:38:43 +02:00
laokaiyao
04970fe487 iperfUtility: add udp rx bandwidth scan 2021-09-01 19:11:28 +08:00
laokaiyao
8d18a9c614 emac: optimise iperf performane 2021-09-01 19:11:28 +08:00
morris
ab0c5fed25 eth: dont warn nego timeout if link is down 2021-08-27 15:30:46 +08:00
Ondrej Kosta
300618e5be Merge branch 'feature/dual_eth' into 'master'
esp_eth: add support for multiple Ethernets modules at a time

Closes IDFGH-5596

See merge request espressif/esp-idf!14640
2021-08-27 06:11:48 +00:00
Ondrej Kosta
ef30384902 esp_eth: add support for multiple Ethernets modules at a time
Ethernet driver events properly bounded with ESP NETIF actions to support multiple Ethernet modules used at a time.

Components using Ethernet updated to conform with new API.

Closes https://github.com/espressif/esp-idf/issues/7318
2021-08-24 17:10:36 +02:00
Ondrej Kosta
a37e4b18c6 phy_lan87xx: extended Vendor Specific Registers definition
Extended Vendor Specific Registers definition to include definitions for LAN8740A/LAN8741A/LAN8742A

Closes https://github.com/espressif/esp-idf/pull/7269
2021-08-10 15:54:32 +02:00
Ondrej Kosta
404905d5f1 esp_eth: Add support to LAN87xx family
Merges/Related-to https://github.com/espressif/esp-idf/pull/7097
2021-07-28 19:34:05 +08:00
Ondrej Kosta
02a432b8d3 Fix invalid ETH_MAC_DEFAULT_CONFIG macro in C++ 2021-07-19 09:56:07 +02:00
morris
8e069dd755 emac: configure data interface early
Related to https://github.com/espressif/esp-idf/issues/7227
2021-07-13 15:10:23 +08:00
Ondrej Kosta
a6db3a5e77 esp_eth: Change clock mode setting
RMII clock mode is made to be run-time configurable.

Closes https://github.com/espressif/esp-idf/issues/6564
Closes https://github.com/espressif/esp-idf/issues/7107
2021-07-08 14:27:31 +02:00
laokaiyao
fe354f1c50 hal/emac_hal: refactord emac_hal 2021-06-16 09:48:21 +08:00
David Cermak
45846f06cf esp_eth: Improve GPIO interrupt processing in w5500 driver
Increase the interrupt reassert level timing so the chances of missing
two consecutive events are minimal.
Enable only SIR_RECV interrupt event, so the SEND events are not used
for GPIO signal.
2021-05-25 04:52:46 +00:00
David Cermak
0cd021adb1 esp_eth: Recover the w5500 driver from missed io interrupt
If the GPIO interrupt is re-asserted too quickly it could be missed. If this happens the driver goes silent and never receives any data. Recover by periodic checks of the IO signal level
2021-05-25 04:52:46 +00:00
morris
0c25793b06 esp_eth: restart negotiation in esp_eth_start 2021-05-18 11:16:32 +08:00
morris
83f2d802ce esp_eth: fix default PHY reset gpio
Closes https://github.com/espressif/esp-idf/issues/7034
2021-05-18 11:16:05 +08:00