Commit Graph

38 Commits

Author SHA1 Message Date
Ondrej Kosta
3d90c7755f fix(esp_eth): Fixed Ethernet link reset when Ethernet is stopped 2024-02-28 15:50:30 +01:00
Bogdan Kolendovskyy
64ee5098b2 esp_eth: fixed chip drivers to reflect chip specific loopback behaviour
In esp_eth_phy_802_3.h:
Make 802.3 API public.

In esp_eth_phy_802_3.c:
Add loopback check in eth_phy_802_3_set_duplex(). Now ESP_ERR_INVALID_STATE is invoked on attempt to set duplex to half
when loopback is enabled.
Remove static property from esp_eth_phy_802_3_autonego_ctrl and esp_eth_phy_802_3_loopback.

In esp_eth_phy_dm9051.c:
Add dm9051_loopback() because DM9051 requires setting additional bit to enable auto-negotiation loopback for data to be
received. Add dm9051_set_speed() which invokes ESP_ERR_INVALID_STATE on attempt to set speed to 10 Mbps when loopback is
enabled because such speed configuration is unsupported.

In esp_eth_phy_ksz80xx.c:
Add ksz80xx_set_speed() which invokes ESP_ERR_INVALID_STATE on attempt to set speed to 10 Mbps when loopback is enabled
because such speed configuration is unsupported.

In esp_eth_phy_ksz8851snl.c:
Change phy_ksz8851_set_duplex() to invoke ESP_ERR_INVALID_STATE on attempt to set duplex to half when loopback is enabled.

In  esp_eth_phy_dp83848.c, esp_eth_phy_rtl8201.c:
Add autonego_ctrl implementation which prevents enabling autonegotiation when loopback is enabled.
Add loopback implementation which disables autonegotiation prior to enabling loopback.

In esp_eth_phy_lan87xx.c:
Add autonego_ctrl implementation which prevents enabling autonegotiation when loopback is enabled.
Add loopback implementation which disables autonegotiation prior to enabling loopback.
Fix link indicating being down when loopback is enabled by force setting link up.
2023-11-23 13:14:31 +00:00
Sagar Bijwe
6501eff7f5 Remove legacy system event framework. 2022-03-09 15:53:45 +05:30
David Čermák
412fb564ca Merge branch 'bugfix/emac_config_dma_burst_len' into 'master'
esp_eth: Make EMAC DMA burst size configurable (GitHub PR)

Closes IDFGH-6199 and IDFGH-5658

See merge request espressif/esp-idf!16412
2022-02-15 10:36:51 +00:00
David Cermak
8da2e4088c esp_eth: Update esp32's EMAC API to decouple driver and vendor config 2022-02-14 16:17:29 +00:00
AndriiFilippov
d69c11e017 ci/esp_eth: Replaced ethernet download task with ethernet download function
Rename eth_download_task to eth_start_download. Remove eth_event_group's
download bit

Delete unused variables
2022-02-14 16:02:45 +01:00
Laukik Hase
ca84d2d6c9 esp_http_client: Added event for HTTP redirect
- Allows users to manually intercept and process the HTTP redirection
 when disable_auto_redirect (from the esp_http_client handle) is set to true

Closes https://github.com/espressif/esp-idf/issues/8029
2022-01-12 11:40:32 +05:30
Ondrej Kosta
d1f2a3dfcc esp_eth: added ioctl options to set Ethernet speed and duplex mode
esp_eth_ioctl third argument always acts as untyped pointer to memory now
2021-11-16 08:34:07 +01:00
lisekt84
474073c0a9
Update test_emac.c
Test of uninstall driver always return ESP_OK (IDFGH-6177) #7854
2021-11-08 19:45:11 +01:00
David Cermak
8b45ac0fbc lwip: Add ping test case (moved from eth component) 2021-09-22 15:22:18 +02: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
morris
c280dc3ac5 eth: added cert for download test 2021-01-07 11:22:23 +08:00
Angus Gratton
66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
morris
9fa06719fa global: enable build uinit test for esp32-s3 2020-09-22 15:15:03 +08:00
morris
31aa16bbe6 unit_test: switch icmp test server to taobao 2020-09-06 09:42:44 +08:00
morris
ab0537c079 esp_rom: extract common MD5 hash apis into esp_rom_md5.h 2020-07-21 17:01:28 +08:00
morris
1184366387 ethernet: support pin emac task to core 2020-05-29 17:51:37 +08:00
morris
ea8d6318af add SOC_EMAC_SUPPORTED in soc_caps.h 2020-02-24 11:57:58 +08:00
morris
e30cd361a8 global: rename esp32s2beta to esp32s2 2020-01-22 12:14:38 +08:00
michael
4220752aed ut: Move tests back from "esp32" subfolder
DISABLED_FOR_TARGETS macros are used

Partly revert "ci: disable unavailable tests for esp32s2beta"

This partly reverts commit 76a3a5fb48.

Partly revert "ci: disable UTs for esp32s2beta without runners"

This partly reverts commit eb158e9a22.

Partly revert "fix unit test and examples for s2beta"

This partly reverts commit 9baa7826be.

Partly revert "efuse: Add support for esp32s2beta"

This partly reverts commit db84ba868c.
2020-01-06 17:13:53 +08:00
morris
fce6a9c735 ethernet: test ethernet download 2019-12-24 11:18:30 +08:00
morris
cf161b1c83 ethernet: add start/stop stress test 2019-12-03 17:58:03 +08:00
morris
c3ee156df0 ethernet: move netif glue && add ref counter
1. move netif glue into single file
2. add reference counter for Ethernet driver
2019-11-27 10:36:32 +08:00
suda-morris
05d71319de ethernet: add gpio number into config structure 2019-11-20 10:36:45 +08:00
suda-morris
f3d0429a9e ethernet: add reference counter for mac and phy 2019-11-20 10:36:45 +08:00
David Cermak
d0afdaaf24 esp_eth: moved starting link timer to eth driver start 2019-11-13 12:36:26 +01:00
David Cermak
3a19bf055d esp_netif and examples: using wifi driver handle, update examples and tests to pass the CI 2019-11-13 12:36:25 +01:00
David Cermak
b834c99148 examples: modify other examples and tests to use esp_netif instead of tcpip_adapter 2019-11-13 12:36:25 +01:00
David Cermak
ffe043b1a8 esp_netif: Introduction of esp-netif component as a replacement of tcpip_adpter
- provides object oriented access to network intefaces
- not limited to default netifs
- more generic abstraction to network input output functions
- event handler registration removed from component responsibility
- backward compatibility layer for legacy tcpip_apapter APIs

Closes IDF-39
2019-11-13 12:36:25 +01:00
suda-morris
dc6acf0033 icmp: add example and unitest 2019-10-22 04:38:09 +00:00
Angus Gratton
633a8376db Merge branch 'bugfix/ethernet_unitest_crash' into 'master'
ethernet: fix crash in unit test

See merge request espressif/esp-idf!6284
2019-10-16 13:05:16 +08:00
suda-morris
13c128fd31 Ethernet: optimize and bugfix
1. simplify deallocate in esp_eth_mac_new_esp32, esp_eth_mac_new_dm9051
2. remove blocking operation in os timer callback
3. check buffer size in ethernet receive function
2019-10-11 12:15:17 +08:00
suda-morris
f0bfd33a10 ethernet: fix crash in unit test 2019-10-11 02:14:12 +00:00
suda-morris
7c8c9cbb68 ethernet: enable unit test 2019-09-25 11:58:16 +08:00
suda-morris
546ac64a9e ethernet: update spi-ethernet api 2019-09-19 09:41:21 +00:00
suda-morris
af78311975 ethernet: malloc hal together with driver context 2019-07-22 21:07:02 +08:00
suda-morris
cb42c29252 ethernet: support dm9051
1. move resource allocation from xxx_init to xxx_new
2. fix enabling tx checksum insertion by mistake
3. iperf example: enlarge max arguments
4. add examples for spi-ethernet

Closes https://github.com/espressif/esp-idf/issues/3715
Closes https://github.com/espressif/esp-idf/issues/3711
2019-07-04 19:38:13 +08:00
suda-morris
90c4827bd2 add esp_eth component 2019-06-26 10:19:23 +08:00