28 #if (HAL_USE_MAC == TRUE) || defined(__DOXYGEN__)    37 #define MAC_SUPPORTS_ZERO_COPY      TRUE    52 #if !defined(PLATFORM_MAC_USE_MAC1) || defined(__DOXYGEN__)    53 #define PLATFORM_MAC_USE_MAC1               FALSE    96 #if (MAC_USE_EVENTS == TRUE) || defined(__DOXYGEN__)   143 #if (PLATFORM_MAC_USE_MAC1 == TRUE) && !defined(__DOXYGEN__)   166 #if MAC_USE_ZERO_COPY == TRUE size_t size
Available space size. 
 
threads_queue_t tdqueue
Transmit semaphore. 
 
uint8_t * mac_lld_get_next_transmit_buffer(MACTransmitDescriptor *tdp, size_t size, size_t *sizep)
Returns a pointer to the next transmit buffer in the descriptor chain. 
 
size_t offset
Current write offset. 
 
size_t mac_lld_write_transmit_descriptor(MACTransmitDescriptor *tdp, uint8_t *buf, size_t size)
Writes to a transmit descriptor's stream. 
 
void mac_lld_init(void)
Low level MAC initialization. 
 
size_t offset
Current read offset. 
 
size_t size
Available data size. 
 
size_t mac_lld_read_receive_descriptor(MACReceiveDescriptor *rdp, uint8_t *buf, size_t size)
Reads from a receive descriptor's stream. 
 
event_source_t rdevent
Receive event. 
 
void mac_lld_release_receive_descriptor(MACReceiveDescriptor *rdp)
Releases a receive descriptor. 
 
macstate_t
Driver state machine possible states. 
 
macstate_t state
Driver state. 
 
const uint8_t * mac_lld_get_next_receive_buffer(MACReceiveDescriptor *rdp, size_t *sizep)
Returns a pointer to the next receive buffer in the descriptor chain. 
 
bool mac_lld_poll_link_status(MACDriver *macp)
Updates and returns the link status. 
 
Structure representing a MAC driver. 
 
msg_t mac_lld_get_receive_descriptor(MACDriver *macp, MACReceiveDescriptor *rdp)
Returns a receive descriptor. 
 
Structure representing a transmit descriptor. 
 
msg_t mac_lld_get_transmit_descriptor(MACDriver *macp, MACTransmitDescriptor *tdp)
Returns a transmission descriptor. 
 
const MACConfig * config
Current configuration data. 
 
void mac_lld_release_transmit_descriptor(MACTransmitDescriptor *tdp)
Releases a transmit descriptor and starts the transmission of the enqueued data as a single frame...
 
void mac_lld_start(MACDriver *macp)
Configures and activates the MAC peripheral. 
 
void mac_lld_stop(MACDriver *macp)
Deactivates the MAC peripheral. 
 
threads_queue_t rdqueue
Receive semaphore. 
 
uint8_t * mac_address
MAC address. 
 
Driver configuration structure. 
 
Structure representing a receive descriptor. 
 
MACDriver ETHD1
MAC1 driver identifier.