Data Structures | Typedefs | Functions
enet_dma.h File Reference

This file contains the type definitions and helper macros for the Enet Data Path (DMA) interface. More...

#include <stdint.h>
#include <ti/drv/enet/include/core/enet_types.h>

Data Structures

struct  EnetDma_CbStats_s
 Stats for packets submitted/retrieved in the DMA event callbacks functions. More...
 
struct  EnetDma_DmaDescStats_s
 DMA descriptor stats for the RX & TX channels. More...
 
struct  EnetDma_RxChStats_s
 RX channel statistics. More...
 
struct  EnetDma_TxChStats_s
 TX channel statistics. More...
 

Macros

Enet DMA statistics configuration

Number of entries kept in the statistics for DMA module

#define ENET_DMA_STATS_HISTORY_CNT   ((uint32_t)32U)
 

Typedefs

typedef struct EnetDma_CbStats_s EnetDma_CbStats
 Stats for packets submitted/retrieved in the DMA event callbacks functions.
 
typedef struct
EnetDma_DmaDescStats_s 
EnetDma_DmaDescStats
 DMA descriptor stats for the RX & TX channels.
 
typedef struct EnetDma_RxChStats_s EnetDma_RxChStats
 RX channel statistics.
 
typedef struct EnetDma_TxChStats_s EnetDma_TxChStats
 TX channel statistics.
 
typedef EnetDma_PktInfo *(* EnetDma_AllocEthPktFxn )(uint32_t pktSize, uint32_t alignSize, void *appPriv)
 Function pointer type for Ethernet packet allocation function.
 
typedef void(* EnetDma_FreeEthPktFxn )(EnetDma_PktInfo *pPktInfo)
 Function pointer type for Ethernet packet free function.
 
typedef EnetQ EnetDma_PktInfoQ
 Packet queue. More...
 
Enet DMA driver callback function types.

Callback function typedefs so that the EnetDma layer can call into the app layer and let it translate between the DMA packet descriptors and packets and the stack/translation layer's buffers and packets.

typedef void(* EnetDma_PktNotifyCb )(void *cbArg)
 Function pointer type for packet notify call back. This is called by driver when packet is received on the RX channel or transmission completed from TX channel.
 

Functions

void EnetDma_initRxChParams (const void *pRxChCfg)
 Initialize RX channel open parameters. More...
 
EnetDma_RxChHandle EnetDma_openRxCh (const void *pRxChCfg)
 Enet DMA open RX channel. More...
 
int32_t EnetDma_closeRxCh (const void *pRxChPrm, EnetDma_PktInfoQ *pFreeQ)
 Enet DMA close RX channel. More...
 
int32_t EnetDma_enableRxEvent (EnetDma_RxChHandle hRxCh)
 Enable RX channel packet reception event. More...
 
int32_t EnetDma_disableRxEvent (EnetDma_RxChHandle hRxCh)
 Disable RX channel packet reception event. More...
 
void EnetDma_initTxChParams (const void *pTxChCfg)
 Initialize TX channel open parameters. More...
 
EnetDma_TxChHandle EnetDma_openTxCh (const void *pTxChCfg)
 Enet DMA open TX channel. More...
 
int32_t EnetDma_closeTxCh (EnetDma_TxChHandle hTxCh, EnetDma_PktInfoQ *pFreeQ)
 Enet DMA close TX channel. More...
 
int32_t EnetDma_enableTxEvent (EnetDma_TxChHandle hTxCh)
 Enable TX channel packet transmit completion event. More...
 
int32_t EnetDma_disableTxEvent (EnetDma_TxChHandle hTxCh)
 Disable TX channel packet transmit completion event. More...
 
int32_t EnetDma_retrieveRxPktQ (EnetDma_RxChHandle hRxCh, EnetDma_PktInfoQ *pRetrieveQ)
 Retrieve queue of RX ready (full) packets from RX channel. More...
 
int32_t EnetDma_retrieveRxPkt (EnetDma_RxChHandle hRxCh, EnetDma_PktInfo *pPkt)
 Retrieve single RX ready (full) packet (single) from RX channel. More...
 
int32_t EnetDma_submitRxPktQ (EnetDma_RxChHandle hRxCh, EnetDma_PktInfoQ *pSubmitQ)
 Submit queue of RX free (empty) packets for reception to RX channel. More...
 
int32_t EnetDma_submitRxPkt (EnetDma_RxChHandle hRxCh, EnetDma_PktInfo *pPkt)
 Submit single RX free (empty) packet for reception to RX channel. More...
 
int32_t EnetDma_retrieveTxDonePktQ (EnetDma_TxChHandle hTxCh, EnetDma_PktInfoQ *pRetrieveQ)
 Retrieve queue of TX free (empty) packets from TX channel. More...
 
int32_t EnetDma_retrieveTxDonePkt (EnetDma_TxChHandle hTxCh, EnetDma_PktInfo *pPkt)
 Retrieve single TX free (empty) packet from TX channel. More...
 
int32_t EnetDma_submitTxReadyPktQ (EnetDma_TxChHandle hTxCh, EnetDma_PktInfoQ *pSubmitQ)
 Submit a queue of ready (full) packets to TX channel. More...
 
int32_t EnetDma_submitTxReadyPkt (EnetDma_TxChHandle hTxCh, EnetDma_PktInfo *pPkt)
 Submit a single ready (full) packet to TX channel. More...
 
void EnetDma_initPktInfo (EnetDma_PktInfo *pktInfo)
 Initialize packet information structure. More...
 
int32_t EnetDma_getRxChStats (EnetDma_RxChHandle hRxCh, EnetDma_RxChStats *pStats)
 Get RX channel statistics. More...
 
int32_t EnetDma_getTxChStats (EnetDma_TxChHandle hTxCh, EnetDma_TxChStats *pStats)
 Get TX channel statistics. More...
 
int32_t EnetDma_resetRxChStats (EnetDma_RxChHandle hRxCh)
 Reset RX channel statistics. More...
 
int32_t EnetDma_resetTxChStats (EnetDma_TxChHandle hTxCh)
 Reset TX channel statistics. More...
 
void EnetDma_initDataPathParams (EnetDma_DataPathCfg *pDmaCfg)
 Set default data path parameters. More...
 

Detailed Description

This file contains the type definitions and helper macros for the Enet Data Path (DMA) interface.


Copyright 2020, Texas Instruments Incorporated