Commit Graph

37 Commits

Author SHA1 Message Date
Ondrej Kosta
b0259f59c2 fix(esp_eth): improved SPI Ethernet _alloc_recv_buf error handling 2024-02-14 12:40:04 +01:00
Ondrej Kosta
fd0a1dc53c feat(esp_eth): added SPI Ethernet module polling mode
Closes https://github.com/espressif/esp-idf/issues/12682
2024-02-07 11:21:57 +01:00
Ondrej Kosta
f732c3b7fd ci(esp_eth): enable Ethernet tests 2024-01-22 09:30:24 +01:00
Ondrej Kosta
ce388a4111 feat(esp_eth): Added support of internal EMAC for ESP32P4
Refactored internal EMAC DMA access.

Added MPLL acquire to manage access to the MPLL by multiple periphs.
2024-01-16 14:29:25 +01:00
Fu Hanxi
a98923bc85
test: temp disable ip101 test cases 2024-01-10 15:37:34 +01:00
Ivan Grokhotkov
88fa79fcc7
feat(unity): upgrade to 2.6.0-RC1 2023-11-28 20:22:02 +01:00
Ondrej Kosta
383bb46298 ci(esp_eth): addressed LAN8720 errata in CI test 2023-11-08 12:40:28 +00:00
Ondrej
58b6add55c ci(esp_eth): make additional Ethernet chips test as nightly run 2023-10-26 11:38:28 +00:00
Ondrej
3a3656ba38 ci(esp_eth): added tests of all supported Etherent chips 2023-10-12 07:23:51 +00:00
Chen Yudong
2e11919f70 fix(ci): change build-test-rules files folder 2023-09-20 19:17:06 +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
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
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
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
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
51ea57f5b8 esp_eth: improved L2 test stability 2023-02-03 10:48:39 +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 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
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
08f421a091 esp_eth: pytest_esp_eth CI timeout hotfix 2022-06-27 11:21:31 +02: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
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
be24d90e14 esp_eth/test_apps: test stability/performance improvement 2022-03-10 08:16:18 +01: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 Cermak
8da2e4088c esp_eth: Update esp32's EMAC API to decouple driver and vendor config 2022-02-14 16:17:29 +00:00
Ondrej Kosta
57225f99c7 Created EMAC start/stop stress test under heavy traffic 2022-02-14 08:21:43 +01: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
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 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
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
SalimTerryLi
14a6ab4a8e
esp_eth: new test_app: emac layer tests 2021-09-08 20:00:14 +08:00