components/esp_hal_emac/README.md
[!NOTE] This component is currently in beta. Its API, behavior, and compatibility may change at any time and without notice; backward compatibility is not guaranteed. Use caution when integrating into production systems.
The esp_hal_emac component provides a Hardware Abstraction Layer for the Ethernet MAC (EMAC) peripherals across all ESP-IDF supported targets. It serves as a foundation for the higher-level Ethernet drivers, offering a consistent interface to interact with Ethernet MAC hardware while hiding the complexities of chip-specific implementations.
The HAL architecture consists of two primary layers:
HAL Layer (Upper): Defines the operational sequences and data structures required to interact with EMAC peripherals, including:
Low-Level Layer (Bottom): Acts as a translation layer between the HAL and the register definitions in the soc component, handling:
This component is primarily used by ESP-IDF peripheral drivers such as esp_eth. It is also utilized by system components that require Ethernet functionality.
For advanced developers implementing custom Ethernet solutions, the HAL functions can be used directly. However, please note that the interfaces provided by this component are internal to ESP-IDF and are subject to change.
soc: Provides chip-specific register definitions and peripheral informationhal: Core hardware abstraction utilities and macros