| M480 BSP V3.05.001 The Board Support Package for M480 Series

Macros | Functions
emac.h File Reference

M480 EMAC driver header file. More...

`#include <stdint.h>`

Go to the source code of this file.

## Macros
#define | EMAC_PHY_ADDR
#define | EMAC_RX_DESC_SIZE
#define | EMAC_TX_DESC_SIZE
#define | EMAC_CAMENTRY_NB
#define | EMAC_MAX_PKT_SIZE
#define | EMAC_LINK_DOWN
#define | EMAC_LINK_100F
#define | EMAC_LINK_100H
#define | EMAC_LINK_10F
#define | EMAC_LINK_10H
#define | EMAC_ENABLE_TX()
| Enable EMAC Tx function. More...
#define | EMAC_ENABLE_RX()
| Enable EMAC Rx function. More...
#define | EMAC_DISABLE_TX()
| Disable EMAC Tx function. More...
#define | EMAC_DISABLE_RX()
| Disable EMAC Rx function. More...
#define | EMAC_ENABLE_MAGIC_PKT_WAKEUP()
| Enable EMAC Magic Packet Wakeup function. More...
#define | EMAC_DISABLE_MAGIC_PKT_WAKEUP()
| Disable EMAC Magic Packet Wakeup function. More...
#define | EMAC_ENABLE_RECV_BCASTPKT()
| Enable EMAC to receive broadcast packets. More...
#define | EMAC_DISABLE_RECV_BCASTPKT()
| Disable EMAC to receive broadcast packets. More...
#define | EMAC_ENABLE_RECV_MCASTPKT()
| Enable EMAC to receive multicast packets. More...
#define | EMAC_DISABLE_RECV_MCASTPKT()
| Disable EMAC Magic Packet Wakeup function. More...
#define | EMAC_GET_ALARM_FLAG()
| Check if EMAC time stamp alarm interrupt occurred or not. More...
#define | EMAC_CLR_ALARM_FLAG()
| Clear EMAC time stamp alarm interrupt flag. More...
#define | EMAC_TRIGGER_RX() do{EMAC->RXST = 0UL;}while(0)
| Trigger EMAC Rx function. More...
#define | EMAC_TRIGGER_TX() do{EMAC->TXST = 0UL;}while(0)
| Trigger EMAC Tx function. More...
#define | EMAC_ENABLE_INT(emac, u32eIntSel)
| Enable specified EMAC interrupt. More...
#define | EMAC_DISABLE_INT(emac, u32eIntSel)
| Disable specified EMAC interrupt. More...
#define | EMAC_GET_INT_FLAG(emac, u32eIntTypeFlag)
| Get specified interrupt flag/status. More...
#define | EMAC_CLEAR_INT_FLAG(emac, u32eIntTypeFlag)
| Clear specified interrupt flag/status. More...

## Functions
void | EMAC_Open (uint8_t *pu8MacAddr)
| Initialize EMAC interface, including descriptors, MAC address, and PHY. More...
void | EMAC_Close (void)
| This function stop all receive and transmit activity and disable MAC interface. More...
void | EMAC_SetMacAddr (uint8_t *pu8MacAddr)
| Set the device MAC address. More...
void | EMAC_EnableCamEntry (uint32_t u32Entry, uint8_t pu8MacAddr[])
| Fill a CAM entry for MAC address comparison. More...
void | EMAC_DisableCamEntry (uint32_t u32Entry)
| Disable a specified CAM entry. More...
uint32_t | EMAC_RecvPkt (uint8_t *pu8Data, uint32_t *pu32Size)
| Receive an Ethernet packet. More...
uint32_t | EMAC_RecvPktTS (uint8_t *pu8Data, uint32_t *pu32Size, uint32_t *pu32Sec, uint32_t *pu32Nsec)
| Receive an Ethernet packet and the time stamp while it's received. More...
void | EMAC_RecvPktDone (void)
| Clean up process after a packet is received. More...
uint32_t | EMAC_SendPkt (uint8_t *pu8Data, uint32_t u32Size)
| Send an Ethernet packet. More...
uint32_t | EMAC_SendPktDone (void)
| Clean up process after packet(s) are sent. More...
uint32_t | EMAC_SendPktDoneTS (uint32_t *pu32Sec, uint32_t *pu32Nsec)
| Clean up process after a packet is sent, and get the time stamp while packet is sent. More...
void | EMAC_EnableTS (uint32_t u32Sec, uint32_t u32Nsec)
| Enable IEEE1588 time stamp function and set current time. More...
void | EMAC_DisableTS (void)
| Disable IEEE1588 time stamp function. More...
void | EMAC_GetTime (uint32_t *pu32Sec, uint32_t *pu32Nsec)
| Get current time stamp. More...
void | EMAC_SetTime (uint32_t u32Sec, uint32_t u32Nsec)
| Set current time stamp. More...
void | EMAC_UpdateTime (uint32_t u32Neg, uint32_t u32Sec, uint32_t u32Nsec)
| Add a offset to current time. More...
void | EMAC_EnableAlarm (uint32_t u32Sec, uint32_t u32Nsec)
| Enable alarm function and set alarm time. More...
void | EMAC_DisableAlarm (void)
| Disable alarm function. More...
uint32_t | EMAC_CheckLinkStatus (void)
| Check Ethernet link status. More...
void | EMAC_PhyInit (void)
int32_t | EMAC_FillCamEntry (uint8_t pu8MacAddr[])
| Fill a MAC address to list and enable. More...
uint8_t * | EMAC_ClaimFreeTXBuf (void)
| Get avaiable TX buffer address. More...
uint32_t | EMAC_GetAvailRXBufSize (void)
| Get data length of avaiable RX buffer. More...
uint32_t | EMAC_SendPktWoCopy (uint32_t u32Size)
| Send an Ethernet packet. More...
void | EMAC_RecvPktDoneWoRxTrigger (void)
| Clean up process after a packet is received. More...

## Detailed Description

M480 EMAC driver header file.

Version
  V1.00 SPDX-License-Identifier: Apache-2.0

Copyright
  (C) 2016-2020 Nuvoton Technology Corp. All rights reserved.

Definition in file emac.h.