esp-idf/components/esp_eth
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
..
include esp_eth: fixed chip drivers to reflect chip specific loopback behaviour 2023-11-23 13:14:31 +00:00
src esp_eth: fixed chip drivers to reflect chip specific loopback behaviour 2023-11-23 13:14:31 +00:00
test esp_eth: fixed chip drivers to reflect chip specific loopback behaviour 2023-11-23 13:14:31 +00:00
test_apps esp_eth pytest: increased robustness of the L2 test 2023-05-29 10:49:31 +00:00
.build-test-rules.yml feat: use standalone project idf-build-apps for find/build apps utils 2022-07-14 08:26:31 +08:00
CMakeLists.txt feat(esp_eth): added IRAM optimization option for internal EMAC 2023-09-26 13:29:37 +00:00
Kconfig feat(esp_eth): added IRAM optimization option for internal EMAC 2023-09-26 13:29:37 +00:00
linker.lf feat(esp_eth): added IRAM optimization option for internal EMAC 2023-09-26 13:29:37 +00:00