AM263x MCU+ SDK  10.00.00
lldenet.h File Reference

Introduction

TI Ethernet Low Level Driver abstract APIs.

Go to the source code of this file.

Data Structures

struct  LLDEnetCfg_t
 Configuration structure for LLDEnet. More...
 
struct  LLDEnetFrame_t
 Structure representing an Ethernet frame. More...
 
struct  LLDEnetFrameScatter_t
 Structure representing an Ethernet frame. More...
 

Macros

#define MAX_BUF_IN_SCATTER_FRAME   32
 Maximum number of buffers in a scatter frame. More...
 

Typedefs

typedef struct LLDEnet LLDEnet_t
 Structure representing the LLDEnet instance. More...
 
typedef void(* LLDEnetRecvCb_t) (LLDEnetFrame_t *frame, void *cbArg)
 Receives callback an Ethernet frame using LLDEnet in the Zero-Copy way. More...
 

Functions

void LLDEnetCfgInit (LLDEnetCfg_t *cfg)
 Initializes the LLDEnetCfg_t structure. More...
 
LLDEnet_tLLDEnetOpen (LLDEnetCfg_t *cfg)
 Opens an instance of LLDEnet. More...
 
void LLDEnetClose (LLDEnet_t *hLLDEnet)
 Closes an instance of LLDEnet. More...
 
int LLDEnetFilter (LLDEnet_t *hLLDEnet, uint8_t *dstMacAddr, uint32_t vlanId, uint32_t ethType)
 Filter RX packets by using the destination MAC address and VLAN ID. More...
 
int LLDEnetAllocMac (LLDEnet_t *hLLDEnet, uint8_t *srcMacAddr)
 Allocates a source MAC address. More...
 
void LLDEnetFreeMac (LLDEnet_t *hLLDEnet, uint8_t *srcMacAddr)
 Frees a previously allocated MAC address. More...
 
int LLDEnetSend (LLDEnet_t *hLLDEnet, LLDEnetFrame_t *frame)
 Sends an Ethernet frame using LLDEnet. More...
 
int LLDEnetSendMulti (LLDEnet_t *hLLDEnet, LLDEnetFrame_t *frames, uint32_t nFrames)
 Sends multiple Ethernet frames using LLDEnet. More...
 
int LLDEnetSendScatter (LLDEnet_t *hLLDEnet, LLDEnetFrameScatter_t *frame)
 Sends an ethernet frame of scatter buffers. More...
 
int LLDEnetSendMultiScatter (LLDEnet_t *hLLDEnet, LLDEnetFrameScatter_t *frames, uint32_t nFrames)
 Sends multiples ethernet frames of scatter buffers. More...
 
int LLDEnetRecv (LLDEnet_t *hLLDEnet, LLDEnetFrame_t *frame)
 Receives an Ethernet frame using LLDEnet. More...
 
int LLDEnetRecvZeroCopy (LLDEnet_t *hLLDEnet, LLDEnetRecvCb_t LLDEnetRecvCb, void *cbArg)
 Receives an Ethernet frame using LLDEnet in the Zero-Copy way. More...
 
bool LLDEnetIsPortUp (LLDEnet_t *hLLDEnet, uint8_t portNum)
 Checks if the specified port is up. More...
 
int LLDEnetGetLinkInfo (LLDEnet_t *hLLDEnet, uint8_t portNum, uint32_t *speed, uint32_t *duplex)
 Retrieves the link speed and duplex information for the specified port. More...
 
int LLDEnetSetTxNotifyCb (LLDEnet_t *hLLDEnet, void(*txNotifyCb)(void *arg), void *arg)
 Sets the transmit notification callback function for LLDEnet. More...
 
int LLDEnetSetRxNotifyCb (LLDEnet_t *hLLDEnet, void(*rxNotifyCb)(void *arg), void *arg)
 Sets the receive notification callback function for LLDEnet. More...
 
int LLDEnetSetDefaultRxDataCb (LLDEnet_t *hLLDEnet, void(*rxDefaultDataCb)(void *data, int size, int port, void *arg), void *arg)
 Sets the receive data callback function for LLDEnet when filter does not match. This callback is supported only when using the RX DMA shared channel. Currently, only Sitara AM273x is supported for this feature. More...
 
bool LLDEnetIsRxTsInPkt (LLDEnet_t *hLLDEnet)
 Checks the receive packet timestamping mode. More...