esp-idf/components/esp_eth
Karl Palsson a85d1e1eca fix(esp_eth): dp83848: correct link detection to use BMSR
Reading the link state via PHYSTS was incorrect, as it only reflects the
link state bit from BMSR.  BMSR latches link down events, and are not
cleared without being read.  (See 802.3-2008 section 2, section 22.2.4.2.13)
This leads to the original DP828xx code only supporting link up, then a
single link down event.

Switch to reading the link state via BMSR, but continuing to read the
negotiation results via PHYSTS and ANLPAR.  This is inline with
LAN8720x, RTL8201, KSZ80xx phy drivers, and other opensource drivers for
the DP838xx family of devices.

Tested on a private board with a DP83825i PHY.  No publically available
boards using the original DP83848 are known of for testing.

Signed-off-by: Karl Palsson <karl.palsson@marel.com>
2024-04-24 09:34:58 +02:00
..
include fix(eth): fix defaultip101 tests error on ci 2024-04-02 16:17:10 +08:00
src fix(esp_eth): dp83848: correct link detection to use BMSR 2024-04-24 09:34:58 +02:00
test_apps Merge branch 'bugfix/eth_l2_test_conn_wait_tmo' into 'master' 2024-03-22 17:49:53 +08:00
CMakeLists.txt fix(esp_eth): Removed -Wno-format in esp_eth component 2024-03-01 17:01:28 +01:00
Kconfig feat(esp_eth): Added support of internal EMAC for ESP32P4 2024-01-16 14:29:25 +01:00
linker.lf feat(esp_eth): Added support of internal EMAC for ESP32P4 2024-01-16 14:29:25 +01:00