XMC Peripheral Library for XMC4000 Family: xmc_eth_mac.h File Reference

XMC Peripheral Library for XMC4000 Family

XMC Peripheral Library for XMC4000 Family  2.1.16
xmc_eth_mac.h File Reference
#include "xmc_common.h" #include "xmc_eth_mac_map.h"
Include dependency graph for xmc_eth_mac.h:

Data Structures

struct  XMC_ETH_MAC_DMA_DESC_t
 
union  XMC_ETH_MAC_PORT_CTRL_t
 
struct  XMC_ETH_MAC_t
 
struct  XMC_ETH_MAC_TIME_t
 

Macros

#define ETH_MAC_DMA_RDES0_AFM   (0x40000000U)
 
#define ETH_MAC_DMA_RDES0_CE   (0x00000002U)
 
#define ETH_MAC_DMA_RDES0_DBE   (0x00000004U)
 
#define ETH_MAC_DMA_RDES0_DE   (0x00004000U)
 
#define ETH_MAC_DMA_RDES0_ES   (0x00008000U)
 
#define ETH_MAC_DMA_RDES0_ESA   (0x00000001U)
 
#define ETH_MAC_DMA_RDES0_FL   (0x3FFF0000U)
 
#define ETH_MAC_DMA_RDES0_FS   (0x00000200U)
 
#define ETH_MAC_DMA_RDES0_FT   (0x00000020U)
 
#define ETH_MAC_DMA_RDES0_LC   (0x00000040U)
 
#define ETH_MAC_DMA_RDES0_LE   (0x00001000U)
 
#define ETH_MAC_DMA_RDES0_LS   (0x00000100U)
 
#define ETH_MAC_DMA_RDES0_OE   (0x00000800U)
 
#define ETH_MAC_DMA_RDES0_OWN   (0x80000000U)
 
#define ETH_MAC_DMA_RDES0_RE   (0x00000008U)
 
#define ETH_MAC_DMA_RDES0_RWT   (0x00000010U)
 
#define ETH_MAC_DMA_RDES0_SAF   (0x00002000U)
 
#define ETH_MAC_DMA_RDES0_TSA   (0x00000080U)
 
#define ETH_MAC_DMA_RDES0_VLAN   (0x00000400U)
 
#define ETH_MAC_DMA_TDES0_CC   (0x00000078U)
 
#define ETH_MAC_DMA_TDES0_CIC   (0x00C00000U)
 
#define ETH_MAC_DMA_TDES0_DB   (0x00000001U)
 
#define ETH_MAC_DMA_TDES0_DC   (0x08000000U)
 
#define ETH_MAC_DMA_TDES0_DP   (0x04000000U)
 
#define ETH_MAC_DMA_TDES0_EC   (0x00000100U)
 
#define ETH_MAC_DMA_TDES0_ED   (0x00000004U)
 
#define ETH_MAC_DMA_TDES0_ES   (0x00008000U)
 
#define ETH_MAC_DMA_TDES0_FF   (0x00002000U)
 
#define ETH_MAC_DMA_TDES0_FS   (0x10000000U)
 
#define ETH_MAC_DMA_TDES0_IC   (0x40000000U)
 
#define ETH_MAC_DMA_TDES0_IHE   (0x00010000U)
 
#define ETH_MAC_DMA_TDES0_IPE   (0x00001000U)
 
#define ETH_MAC_DMA_TDES0_JT   (0x00004000U)
 
#define ETH_MAC_DMA_TDES0_LC   (0x00000200U)
 
#define ETH_MAC_DMA_TDES0_LOC   (0x00000800U)
 
#define ETH_MAC_DMA_TDES0_LS   (0x20000000U)
 
#define ETH_MAC_DMA_TDES0_NC   (0x00000400U)
 
#define ETH_MAC_DMA_TDES0_OWN   (0x80000000U)
 
#define ETH_MAC_DMA_TDES0_TCH   (0x00100000U)
 
#define ETH_MAC_DMA_TDES0_TER   (0x00200000U)
 
#define ETH_MAC_DMA_TDES0_TTSE   (0x02000000U)
 
#define ETH_MAC_DMA_TDES0_TTSS   (0x00020000U)
 
#define ETH_MAC_DMA_TDES0_UF   (0x00000002U)
 
#define ETH_MAC_DMA_TDES0_VF   (0x00000080U)
 
#define XMC_ETH_MAC_BUF_SIZE   (1524)
 
#define XMC_ETH_MAC_PHY_MAX_RETRIES   (0xffffUL)
 
#define XMC_ETH_WAKEUP_REGISTER_LENGTH   (8U)
 

Enumerations

Functions

void XMC_ETH_MAC_AdjustPTPClock (XMC_ETH_MAC_t *const eth_mac, uint32_t correction)
 
void XMC_ETH_MAC_ClearEventStatus (XMC_ETH_MAC_t *const eth_mac, uint32_t event)
 
void XMC_ETH_MAC_Disable (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableDestinationAddressInverseFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableEvent (XMC_ETH_MAC_t *const eth_mac, uint32_t event)
 
void XMC_ETH_MAC_DisableFrameBurst (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableFrameFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableJumboFrame (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableLoopback (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableMulticastHashFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisablePowerDownMode (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisablePowerManagmentEvent (XMC_ETH_MAC_t *const eth_mac, uint32_t event)
 
void XMC_ETH_MAC_DisablePromiscuousMode (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisablePTPAlarm (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableReceptionBroadcastFrames (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableReceptionMulticastFrames (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableRx (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableRxOwn (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableRxWatchdog (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableSourceAddressFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableSourceAddressInverseFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableTx (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableTxJabber (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_DisableUnicastHashFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_Enable (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableDestinationAddressInverseFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableEvent (XMC_ETH_MAC_t *const eth_mac, uint32_t event)
 
void XMC_ETH_MAC_EnableFrameBurst (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableFrameFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableHashPerfectFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableJumboFrame (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableLoopback (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableMulticastHashFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnablePerfectFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnablePowerDownMode (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnablePowerManagmentEvent (XMC_ETH_MAC_t *const eth_mac, uint32_t event)
 
void XMC_ETH_MAC_EnablePromiscuousMode (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnablePTPAlarm (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableReceptionBroadcastFrames (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableReceptionMulticastFrames (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableRx (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableRxOwn (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableRxWatchdog (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableSourceAddressFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableSourceAddressInverseFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableTx (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableTxJabber (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_EnableUnicastHashFilter (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_FlushRx (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_FlushTx (XMC_ETH_MAC_t *const eth_mac)
 
uint64_t XMC_ETH_MAC_GetAddress (XMC_ETH_MAC_t *const eth_mac)
 
uint32_t XMC_ETH_MAC_GetEventStatus (const XMC_ETH_MAC_t *const eth_mac)
 
uint32_t XMC_ETH_MAC_GetPTPStatus (const XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_GetPTPTime (XMC_ETH_MAC_t *const eth_mac, XMC_ETH_MAC_TIME_t *const time)
 
uint8_t * XMC_ETH_MAC_GetRxBuffer (XMC_ETH_MAC_t *const eth_mac)
 
uint32_t XMC_ETH_MAC_GetRxFrameSize (XMC_ETH_MAC_t *const eth_mac)
 
XMC_ETH_MAC_STATUS_t XMC_ETH_MAC_GetRxTimeStamp (XMC_ETH_MAC_t *const eth_mac, XMC_ETH_MAC_TIME_t *const time)
 
uint8_t * XMC_ETH_MAC_GetTxBuffer (XMC_ETH_MAC_t *const eth_mac)
 
XMC_ETH_MAC_STATUS_t XMC_ETH_MAC_GetTxTimeStamp (XMC_ETH_MAC_t *const eth_mac, XMC_ETH_MAC_TIME_t *const time)
 
XMC_ETH_MAC_STATUS_t XMC_ETH_MAC_Init (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_InitPTP (XMC_ETH_MAC_t *const eth_mac, uint32_t config)
 
void XMC_ETH_MAC_InitPTPEx (XMC_ETH_MAC_t *const eth_mac, uint32_t config, XMC_ETH_MAC_TIME_t *const time)
 
void XMC_ETH_MAC_InitRxDescriptors (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_InitTxDescriptors (XMC_ETH_MAC_t *const eth_mac)
 
bool XMC_ETH_MAC_IsEnabled (const XMC_ETH_MAC_t *const eth_mac)
 
bool XMC_ETH_MAC_IsMagicPacketReceived (XMC_ETH_MAC_t *const eth_mac)
 
bool XMC_ETH_MAC_IsRxDescriptorOwnedByDma (XMC_ETH_MAC_t *const eth_mac)
 
bool XMC_ETH_MAC_IsTxDescriptorOwnedByDma (XMC_ETH_MAC_t *const eth_mac)
 
bool XMC_ETH_MAC_IsWakeupFrameReceived (XMC_ETH_MAC_t *const eth_mac)
 
uint32_t XMC_ETH_MAC_ReadFrame (XMC_ETH_MAC_t *const eth_mac, uint8_t *const frame, uint32_t len)
 
XMC_ETH_MAC_STATUS_t XMC_ETH_MAC_ReadPhy (XMC_ETH_MAC_t *const eth_mac, uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
 
void XMC_ETH_MAC_Reset (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_ResumeRx (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_ResumeTx (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_ReturnRxDescriptor (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_ReturnTxDescriptor (XMC_ETH_MAC_t *const eth_mac)
 
XMC_ETH_MAC_STATUS_t XMC_ETH_MAC_SendFrame (XMC_ETH_MAC_t *const eth_mac, const uint8_t *frame, uint32_t len, uint32_t flags)
 
void XMC_ETH_MAC_SetAddress (XMC_ETH_MAC_t *const eth_mac, uint64_t addr)
 
void XMC_ETH_MAC_SetAddressHashFilter (XMC_ETH_MAC_t *const eth_mac, const uint64_t hash)
 
void XMC_ETH_MAC_SetAddressPerfectFilter (XMC_ETH_MAC_t *const eth_mac, uint8_t index, const uint64_t addr, uint32_t flags)
 
void XMC_ETH_MAC_SetLink (XMC_ETH_MAC_t *const eth_mac, XMC_ETH_LINK_SPEED_t speed, XMC_ETH_LINK_DUPLEX_t duplex)
 
XMC_ETH_MAC_STATUS_t XMC_ETH_MAC_SetManagmentClockDivider (XMC_ETH_MAC_t *const eth_mac)
 
void XMC_ETH_MAC_SetPortControl (XMC_ETH_MAC_t *const eth_mac, const XMC_ETH_MAC_PORT_CTRL_t port_ctrl)
 
void XMC_ETH_MAC_SetPTPAlarm (XMC_ETH_MAC_t *const eth_mac, const XMC_ETH_MAC_TIME_t *const time)
 
void XMC_ETH_MAC_SetPTPTime (XMC_ETH_MAC_t *const eth_mac, XMC_ETH_MAC_TIME_t *const time)
 
void XMC_ETH_MAC_SetTxBufferSize (XMC_ETH_MAC_t *const eth_mac, uint32_t size)
 
void XMC_ETH_MAC_SetVLANTag (XMC_ETH_MAC_t *const eth_mac, uint16_t tag)
 
void XMC_ETH_MAC_SetWakeUpFrameFilter (XMC_ETH_MAC_t *const eth_mac, const uint32_t(*const filter)[(8U)])
 
void XMC_ETH_MAC_UpdateAddend (XMC_ETH_MAC_t *const eth_mac, uint32_t addend)
 
void XMC_ETH_MAC_UpdatePTPTime (XMC_ETH_MAC_t *const eth_mac, const XMC_ETH_MAC_TIME_t *const time)
 
XMC_ETH_MAC_STATUS_t XMC_ETH_MAC_WritePhy (XMC_ETH_MAC_t *const eth_mac, uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
 

Detailed Description

Date
2017-08-07
Generated on Mon Aug 7 2017 11:33:56 for XMC Peripheral Library for XMC4000 Family by   doxygen 1.8.11