feat(eth): Add support for generic IEEE 802.3 driver (#10859)

This commit is contained in:
Me No Dev 2025-01-15 16:35:47 +02:00 committed by me-no-dev
parent 50d85a6e9d
commit 18cbd762c9
2 changed files with 8 additions and 0 deletions

View file

@ -283,6 +283,9 @@ bool ETHClass::begin(eth_phy_type_t type, int32_t phy_addr, int mdc, int mdio, i
esp_eth_phy_t *phy = NULL;
switch (type) {
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 4, 0)
case ETH_PHY_GENERIC: phy = esp_eth_phy_new_generic(&phy_config); break;
#endif
case ETH_PHY_LAN8720: phy = esp_eth_phy_new_lan87xx(&phy_config); break;
case ETH_PHY_TLK110: phy = esp_eth_phy_new_ip101(&phy_config); break;
case ETH_PHY_RTL8201: phy = esp_eth_phy_new_rtl8201(&phy_config); break;

View file

@ -23,6 +23,7 @@
#ifndef _ETH_H_
#define _ETH_H_
#include "esp_idf_version.h"
//
// Example configurations for pins_arduino.h to allow starting with ETH.begin();
@ -127,6 +128,10 @@ typedef emac_rmii_clock_mode_t eth_clock_mode_t;
typedef enum {
#if CONFIG_ETH_USE_ESP32_EMAC
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 4, 0)
ETH_PHY_GENERIC,
#define ETH_PHY_JL1101 ETH_PHY_GENERIC
#endif
ETH_PHY_LAN8720,
ETH_PHY_TLK110,
ETH_PHY_RTL8201,