Ondrej Kosta
a93d53aadb
fix(esp_eth): various Ethernet driver fixes
...
ksz8851snl: enabled reception of multicast frames
Internal EMAC: fixed APLL CLK deinitialization
DM9051 and KSZ80xx: fixed speed configuration when not in loopback mode
phy_802_3: added multiple attempts when autodetecting PHY address
2023-10-12 07:23:51 +00:00
Bogdan Kolendovskyy
fac7cb4b78
Merge branch 'bugfix/rtl8201_reset_timing' into 'master'
...
esp_eth: rtl8201 timing fix
Closes IDFGH-10170
See merge request espressif/esp-idf!25814
2023-10-04 03:00:23 +08:00
Bogdan Kolendovskyy
c75fab3fa4
esp_eth: change rtl8201 reset timing to match datasheet
...
In esp_eth_phy_rtl8201.c:
Add 150ms delay after hardware reset, chage reset assertion time to 10ms
In esp_eth_phy_802_3.c:
Change reset function to use vTaskDelay for long (>=10ms) reset assertion time
Change esp_eth_phy_802_3_detect_phy_addr to check range 0-31 instead of 0-15.
2023-10-02 10:10:25 +02:00
Ondrej Kosta
e0c225b4f7
Merge branch 'feature/eth_spi_abstraction' into 'master'
...
Abstraction of SPI driver for SPI Ethernet modules
Closes IDF-7645
See merge request espressif/esp-idf!24429
2023-09-27 18:36:25 +08:00
Ondrej Kosta
ecd1759a0b
feat(esp_eth): abstraction of SPI driver for SPI Ethernet modules
2023-09-26 07:58:05 +00:00
Bogdan Kolendovskyy
303d2c2dc6
fix(esp_eth): Add model number 0x13 to list of suported models
...
Add model number 0x13 to KSZ80xx driver's list of supported models
corresonding to KSZ8041RLNI.
2023-09-25 11:24:52 +02:00
Chen Yudong
2e11919f70
fix(ci): change build-test-rules files folder
2023-09-20 19:17:06 +08:00
Ondrej Kosta
380b83d7a1
Merge branch 'feature/eth_iram_optimization' into 'master'
...
feat(esp_eth): added IRAM optimization option for internal EMAC
Closes WIFI-6226
See merge request espressif/esp-idf!25704
2023-09-07 00:35:56 +08:00
Ondrej Kosta
0ff10c3e06
feat(esp_eth): added IRAM optimization option for internal EMAC
2023-09-05 07:42:30 +02:00
morris
0b970a8dfe
refactor(emac): add LL functions for bus clock control
2023-09-04 10:52:03 +08:00
Omar Chebib
3e9d2155eb
feat(esp_eth): add opencores ethernet support for ESP32-C3 (QEMU) target
2023-08-24 10:32:46 +08:00
Bogdan Kolendovskyy
224ba396f1
esp_eth: add loopback test, change chip drivers to reflect chip specific behaviour
...
In esp_eth_test_apps.c:
Add test of loopback functionality. Change speed/duplex/autonegotiation test - remove need to enable loopback (required
for it to work on some phys supported by ESP-IDF)
In Kconfig.projbuild:
Add parameters to select which configuration is used - standard or custom.
Add for custom configuration parameters to select MDC and MDIO pins (required to work with WESP-32 and other boards that
use non-standard pin assignments).
In esp_eth_test_common.c:
Add code to support changes made in Kconfig
In sdkconfig.ci.default_rtl8201:
Change config which is used. Now custom is used and MDC is gpio 16, MDIO is gpio 17. Reuqired to work with WESP-32
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-08-03 13:18:44 +02:00
Bogdan Kolendovskyy
a28d87e72a
fix(eth_netif_glue): Move reporting speed to action connected
...
esp_eth_netif_glue.c:
Moved reporting link speed to action connected, removed speed reportg code from action start.
2023-07-27 13:15:42 +02:00
Ondrej Kosta
5ebe6b51d8
esp_eth: fixed esp_eth_transmit_vargs to transmit only when link is up
...
esp_eth test: clear unicast Rx event before wait
2023-05-23 08:23:34 +02:00
Ondrej Kosta
5da56ea361
Merge branch 'contrib/github_pr_11337' into 'master'
...
w5500: mac: poll VERSIONR to ensure the chip is initialised (GitHub PR)
Closes IDFGH-10061
See merge request espressif/esp-idf!23792
2023-05-23 13:23:51 +08:00
Jackson Ming Hu
896a07e5d6
w5500: rework version check to avoid a false alarm on fault detection
...
See: https://github.com/espressif/esp-idf/issues/11331
2023-05-19 15:33:22 +02:00
Mahavir Jain
2688dfe982
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-16 15:56:29 +05:30
Marius Vikhammer
bca026455c
ci: remove redundent ci configs for chip support and network components
...
CI would build psram config test apps even for target with no psram.
2023-04-26 09:54:29 +08:00
Ondrej Kosta
c231c79fc8
HAL: wrapped emac_ll functions to emac_hal
...
Closes #9934
2023-04-19 12:46:45 +00:00
Ondrej Kosta
34850de22b
Merge branch 'bugfix/eth_l2_test_switch' into 'master'
...
LAN8720 & IP101 L2 Test Fix
Closes IDFCI-1624 and IDFCI-1567
See merge request espressif/esp-idf!22907
2023-04-14 20:53:08 +08:00
Ondrej Kosta
f6715c9c29
esp_eth pytest: increased robustness of the L2 test
...
Added filtering frames based on MAC address
2023-04-13 08:26:45 +02:00
Ondrej Kosta
3d66a10114
Ethernet driver and documentation clean-up
2023-04-04 11:33:08 +00:00
Ondrej
2ec7fc8f10
esp_eth: allowed DM9051 to receive multicast packets
...
Removed extra PHY status link checks from DM9051 MAC layer
2023-03-14 13:59:27 +00:00
Omar Chebib
5e5343d429
TWDT: Use the new TWDT Kconfig options in the examples and tests
2023-02-17 11:22:25 +08:00
Ondrej Kosta
05510e67d1
Merge branch 'bugfix/eth_lan8720_ci' into 'master'
...
esp_eth: start/stop and L2 test stability improvements
See merge request espressif/esp-idf!21898
2023-02-09 15:36:12 +08:00
Ondrej Kosta
51ea57f5b8
esp_eth: improved L2 test stability
2023-02-03 10:48:39 +01:00
Ondrej Kosta
256d457969
esp_eth: possible start/stop issue fixed
...
ESP32 EMAC could hang when stopped/started multiple times at 10Mbps speed mode
2023-02-03 10:48:39 +01:00
Ondrej
5fdb49698a
esp_eth: fixed copyright for W5500
2023-01-19 07:56:22 +00:00
Reinis Muiznieks
bb2f346e55
Verify w5500 chip properly
2023-01-17 11:52:51 +02:00
Ondrej Kosta
84ab32b4ef
Merge branch 'bugfix/emac_memory_leak' into 'master'
...
Fixed false positive emac rx memory leak reported by Coverity
Closes IDF-6363
See merge request espressif/esp-idf!21341
2022-12-05 20:04:15 +08:00
Ondrej Kosta
600788da6a
Merge branch 'contrib/github_pr_10292' into 'master'
...
fix small bug when logging eth error (GitHub PR)
Closes IDFGH-8869
See merge request espressif/esp-idf!21407
2022-12-05 17:58:37 +08:00
Ondrej
647a9dfde3
Improved emac rx task code to suppress Coverity false positive memory leak indication
2022-12-02 12:57:43 +00:00
Alexander Hübener
93a8510dc5
fixed args order
2022-12-01 21:36:13 +01:00
Ondrej
2bf7255285
Ethernet related tests improvements
...
esp_eth: tests migrated to pytest and added support of multiple Ethernet devices
esp_netif: l2tap test migrated to pytest
2022-11-28 11:34:34 +00:00
Ondrej
c40e4eb499
esp_eth: DM9051 stop/start issue fixed
2022-11-28 10:54:43 +00:00
Ondrej Kosta
785f154f56
Merge branch 'feature/emac_buff' into 'master'
...
esp_eth: receive buffer allocation optimization
Closes IDFGH-7769
See merge request espressif/esp-idf!19977
2022-11-24 00:48:19 +08:00
Omar Chebib
cd21058097
C/Cxx: unify static assertions with the macro ESP_STATIC_ASSERT
...
Closes https://github.com/espressif/esp-idf/issues/9938
2022-11-21 16:18:08 +08:00
Ondrej
6fff81d970
esp_eth: receive buffer allocation optimization
...
Receive buffers are allocated with a size equal to actual received frame size
2022-11-15 10:44:12 +00:00
Ondrej Kosta
f6b2414bb5
Merge branch 'bugfix/esp_eth_test_rx' into 'master'
...
component_ut_pytest_esp32_ip101 fix
Closes IDFCI-1313
See merge request espressif/esp-idf!18526
2022-08-05 14:02:39 +08:00
Ivan Grokhotkov
401c10ecfb
build system: re-add -Wno-format as private flag for some components
2022-08-03 16:42:47 +04:00
Ondrej Kosta
2a09f887f3
eth test_apps: fixes problem with 'traffic_gen' process hanging
2022-08-03 07:42:38 +00:00
Guillaume Souchere
6005cc9163
hal: Deprecate interrupt_controller_hal.h, cpu_hal.h and cpu_ll.h interfaces
...
This commit marks all functions in interrupt_controller_hal.h, cpu_ll.h and cpu_hal.h as deprecated.
Users should use functions from esp_cpu.h instead.
2022-07-22 00:06:06 +08:00
David Cermak
5c383d7b73
esp_netif/lwip: Fix deps cycles to "lwip -> esp_netif -> phy-drivers"
...
Fix dependency tree so that lwip doesn't depend on any specific network
interface component.
Network interface drivers shall depend on esp_netif.
esp_netif shall depend on lwip (but not on any specific interface
driver) -- it optionally depends on vfs and esp_eth (need ethernet
header for L2/bridge mode)
2022-07-20 14:59:07 +02:00
Ondrej Kosta
c0312e3242
Merge branch 'feature/improve_spi_ethernet_init' into 'master'
...
esp_eth: SPI Ethernet modules initialization simplification
Closes IDF-3902
See merge request espressif/esp-idf!18663
2022-07-15 00:02:23 +08:00
Ondrej Kosta
bb6c6aff36
esp_eth: SPI Ethernet modules initialization simplification
2022-07-14 08:46:22 +02:00
Fu Hanxi
05d2357062
feat: use standalone project idf-build-apps for find/build apps utils
2022-07-14 08:26:31 +08:00
Ondrej Kosta
ed7afd8b73
Merge branch 'feature/eth_phy_common' into 'master'
...
ESP PHY structure refactor
Closes IDF-5149
See merge request espressif/esp-idf!18158
2022-06-28 23:25:12 +08:00
Ondrej Kosta
08f421a091
esp_eth: pytest_esp_eth CI timeout hotfix
2022-06-27 11:21:31 +02:00
Ondrej Kosta
43f3904304
esp_eth: IEEE 802.3 PHY MII Management Interface functionality grouped to one common file
2022-06-24 05:51:44 +00:00
Ivan Grokhotkov
a2ca5d03c5
examples, components: remove C/C++ standard overrides
...
...where they are not necessary after switching to C17 and C++20.
2022-06-17 16:44:17 +02:00
David Cermak
fd366fac9e
esp_eth: Remove deprecated esp_eth_receive()
2022-06-09 07:55:40 +00:00
David Cermak
343cf2696e
esp_eth: Reduce internal deps onto netif-glue
2022-06-09 07:55:40 +00:00
David Cermak
5e19b9c951
esp-netif: Make dependency on esp-eth optional
...
* esp-netif to optionally depend on esp-eth (only for l2tap config)
* esp_eth.h now includes the original ethernet header and the
ethernet-netif glue layer
* Updated examples and test to explicitely use esp-eth dependency if
needed
2022-06-09 07:55:40 +00:00
David Cermak
680f3a50c2
esp_eth: Rename drivers main header to esp_eth_driver
...
The original would be used as API header bringing both driver and netif related includes
2022-06-09 07:55:40 +00:00
David Čermák
46e599c56d
Merge branch 'feature/lwip_rework_patches' into 'master'
...
lw-IP: Reworked patches
Closes IDFGH-6197
See merge request espressif/esp-idf!17388
2022-06-03 15:26:55 +08:00
Djordje Nedic
facab8c5a7
tools: Increase the minimal supported CMake version to 3.16
...
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
David Cermak
5b471a1848
esp_netif/lwip: Implement basic support for vanilla-lwip (2.1.3-REL)
...
* Reference lwip-2.1.3-REL vanilla lwip version
* Use inherent NETIF callbacks instead of dhcp/ipv6/autoip
2022-05-18 17:10:42 +02:00
Marius Vikhammer
c8617fe965
docs: fix all doxygen warnings
...
Doxygen warnings would previously not result in a failed pipeline.
Fixed this as well as all current warnings.
2022-05-12 14:50:03 +08:00
morris
cc71e645be
Merge branch 'feature/ksz8863rll_support' into 'master'
...
ESP IDF infrastructure preparation for ksz8863rll support
See merge request espressif/esp-idf!17203
2022-04-14 10:51:27 +08:00
Ondrej Kosta
e4217ff868
esp_eth/test_apps: fixed byte order of EthType during raw socket creation
2022-04-12 12:33:57 +00:00
Ondrej Kosta
4051b80b4d
esp_netif: remove dependency of L2 TAP Interface from netif_lwip
...
esp_eth: extended infrastructure to optionally provide more advanced access to MAC/PHY layers
2022-04-08 16:40:29 +02:00
David Cermak
c63c8d4df1
esp_eth: Fix open-cores explicit inclusion
2022-03-23 09:05:30 +01:00
Ondrej Kosta
c69b4c817b
Fixed Ethernet lwIP netif error indication
2022-03-22 07:17:40 +00:00
Ondrej Kosta
0e0c5f93e3
Merge branch 'bugfix/test_esp_eth_ip101' into 'master'
...
esp_eth/test_apps: test stability/performance improvement
Closes IDFCI-1150
See merge request espressif/esp-idf!17411
2022-03-11 12:03:30 +08:00
David Cermak
795b7ed993
esp_netif: Remove tcpip_adapter compatibility layer
2022-03-10 08:19:43 +01:00
Ondrej Kosta
be24d90e14
esp_eth/test_apps: test stability/performance improvement
2022-03-10 08:16:18 +01:00
Sagar Bijwe
6501eff7f5
Remove legacy system event framework.
2022-03-09 15:53:45 +05:30
Sudeep Mohanty
a9fda54d39
esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
...
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
Omar Chebib
2571aaf3c9
G0: target component (components/esp32*) doesn't depend on driver anymore
2022-03-02 04:21:00 +00:00
David Cermak
25dbf35867
ci/esp_eth: Fix incorrect esp32 emac init
...
Regression from 8da2e4088c
2022-02-15 18:38:40 +01:00
Ondrej Kosta
7512bdecfe
Merge branch 'feature/emac_start_stop_test' into 'master'
...
test_emac: extended Ethernet start/stop stress test
Closes IDF-4540
See merge request espressif/esp-idf!16755
2022-02-15 13:23:01 +00:00
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
David Cermak
1dc60730ee
esp_eth: ESP32 EMAC to use common DMA busrt size for both Tx and Rx
2022-02-14 16:17:29 +00:00
David Cermak
2553fb5845
esp_eth: Make EMAC DMA burst size configurable
...
Merges https://github.com/espressif/esp-idf/pull/7874
Closes https://github.com/espressif/esp-idf/issues/7380
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
Ondrej Kosta
57225f99c7
Created EMAC start/stop stress test under heavy traffic
2022-02-14 08:21:43 +01:00
Ondrej Kosta
e97fd4b076
esp_eth: EMAC start/stop optimization
2022-02-14 08:21:43 +01:00
Anton Maklakov
8bb06df68f
components: correct abs() use for unsigned and 64-bit arguments
2022-01-29 12:07:16 +07:00
Fu Hanxi
62a397a9b5
ci: add flaky test
2022-01-24 16:37:23 +08:00
Fu Hanxi
a801555299
ci: replace all component ut with pytest-embedded
2022-01-24 16:37:23 +08: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
fa9cc49b9e
Merge branch 'bugfix/esp_eth_start_tx_buff' into 'master'
...
Fixed ESP32 EMAC driver `insufficient TX buffer size`
Closes WIFI-4194
See merge request espressif/esp-idf!16457
2022-01-05 09:40:12 +00:00
laokaiyao
4f28b33bbc
apll: add lock for apll
2021-12-29 10:13:13 +08:00
Ondrej Kosta
1150a11c56
Fixed ESP32 EMAC driver insufficient TX buffer size
which could followed esp_eth_stop and esp_eth_start sequence
2021-12-23 10:48:38 +01:00
Ondrej Kosta
30e03e2c1d
netif_glue: removal of unused global variable
2021-12-14 15:23:07 +01:00
David Cermak
f181c3c23a
esp_eth/CI: Fix app-test to start recv test after sock bound
2021-12-09 16:27:37 +01:00
David Čermák
5c33570524
Merge branch 'bugfix/eth_test_app_regex' into 'master'
...
esp_eth/CI: Fix app-test regex for parsing DUT's MAC
Closes IDFCI-989
See merge request espressif/esp-idf!16327
2021-12-09 12:03:55 +00:00
David Cermak
d1dee48b2d
CI: Use Console.logs instead of prints in eth test apps
2021-12-09 07:37:26 +01:00
David Cermak
caae336f6e
esp_eth/CI: Fix app-test regex for parsing DUT's MAC
2021-12-09 07:28:11 +01:00
Ondrej Kosta
7e864d6856
netif_glue: Removed deprecated esp_eth_set_default_handlers and esp_eth_clear_default_handlers
2021-12-08 09:21:30 +01:00
Ondrej Kosta
914eafe2db
Merge branch 'feature/ksz80xx_support_extension' into 'master'
...
esp_eth: rework KSZ80xx implementation and add more KSZ80xx PHYs
Closes IDFGH-6203 and IDF-3522
See merge request espressif/esp-idf!16024
2021-12-06 08:54:33 +00:00
Ondrej Kosta
970986e5b6
Added KSZ8041/81 and LAN8720 Driver IDF v5.0 migration description
...
LAN8720 function call clean up
2021-12-03 14:28:52 +01:00
Fischerauer Christian
3fb83f2866
esp_eth: rework KSZ80xx implementation and add more KSZ80xx PHYs
...
* add support for KSZ8001, KSZ8021, KSZ8031, KSZ8051 and KSZ8061
* remove duplicate code
* simplify architecture to make the code base extensible (for future work)
2021-12-02 11:56:08 +01:00
Ondrej Kosta
fcd634faec
Merge branch 'contrib/github_pr_7958' into 'master'
...
fix: missing initializer waring in esp_eth
Closes IDFGH-6293
See merge request espressif/esp-idf!16178
2021-11-29 13:24:58 +00:00
Vladimir Chistyakov
2b944ca056
fix: missing initializer warning in esp_eth
...
remove auto_nego_en member from esp_eth_config_t as it is not used
anywhere
2021-11-26 17:42:38 +07:00
Ondrej Kosta
3a7a67f174
netif: added ESP-NETIF L2 TAP interface
2021-11-23 11:17:22 +01:00
Ondrej Kosta
6d4ff2c05e
Merge branch 'feature/eth_ioctl_speed_duplex' into 'master'
...
esp_eth: esp_eth_ioctl update
Closes IDF-1240 and IDF-4060
See merge request espressif/esp-idf!15607
2021-11-16 11:56:18 +00:00
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
Roland Dobai
766aa57084
Build & config: Remove leftover files from the unsupported "make" build system
2021-11-11 15:32:36 +01:00