AM64x MCU+ SDK  10.00.00

Detailed Description

Param struct for the get default flowId open parameters.

The param struct for the RX flow open function The returned channel handle is an opaque variable used to access the RX Flow in other function commands.

Data Fields

Udma_DrvHandle hUdmaDrv
 
uint32_t chIdx
 
uint32_t startIdx
 
uint32_t flowIdx
 
EnetUdma_UdmaChPrms udmaChPrms
 
bool useGlobalEvt
 
EnetDma_PktNotifyCb notifyCb
 
EnetUdma_UdmaFlowPrms flowPrms
 
uint32_t numRxPkts
 
bool disableCacheOpsFlag
 
uint32_t rxFlowMtu
 
EnetUdma_AllocRingMemFxn ringMemAllocFxn
 
EnetUdma_FreeRingMemFxn ringMemFreeFxn
 
EnetUdma_AllocDmaDescFxn dmaDescAllocFxn
 
EnetUdma_FreeDmaDescFxn dmaDescFreeFxn
 
void * cbArg
 
bool useProxy
 
EnetUdma_AutoReclaimPrms autoReclaimPrms
 

Field Documentation

◆ hUdmaDrv

Udma_DrvHandle EnetUdma_OpenRxFlowPrms::hUdmaDrv

UDMA driver handle

◆ chIdx

uint32_t EnetUdma_OpenRxFlowPrms::chIdx

Channel index

◆ startIdx

uint32_t EnetUdma_OpenRxFlowPrms::startIdx

Flow start index

◆ flowIdx

uint32_t EnetUdma_OpenRxFlowPrms::flowIdx

Flow index to be opened

◆ udmaChPrms

EnetUdma_UdmaChPrms EnetUdma_OpenRxFlowPrms::udmaChPrms

UDMA specific channel params

◆ useGlobalEvt

bool EnetUdma_OpenRxFlowPrms::useGlobalEvt

Whether to use the shared global event or not. If set to false, a dedicated event will be used for this channel.

◆ notifyCb

EnetDma_PktNotifyCb EnetUdma_OpenRxFlowPrms::notifyCb

Enet UDMA event callback function - this function will be called when the registered packets are received on RX Flow

◆ flowPrms

EnetUdma_UdmaFlowPrms EnetUdma_OpenRxFlowPrms::flowPrms

UDMA Flow params

◆ numRxPkts

uint32_t EnetUdma_OpenRxFlowPrms::numRxPkts

Number of receive packets, used for allocating number of DMA descriptors Note - The HW ring element count field is 19-bit

◆ disableCacheOpsFlag

bool EnetUdma_OpenRxFlowPrms::disableCacheOpsFlag

Flag to disable cache operations on the ring memory

◆ rxFlowMtu

uint32_t EnetUdma_OpenRxFlowPrms::rxFlowMtu

Maximum receive packet length for this flow. Make sure packets of at least this length are submitted in EnetDma_submitRxPktQ()

◆ ringMemAllocFxn

EnetUdma_AllocRingMemFxn EnetUdma_OpenRxFlowPrms::ringMemAllocFxn

Callback functions. Callback function typedefs so that the EnetUdma layer can call into the app layer and let it translate between the hardware buffer descriptors and packets and the stack/translation layer's buffers and packets

Ring memory allocation callback, this cannot be NULL

◆ ringMemFreeFxn

EnetUdma_FreeRingMemFxn EnetUdma_OpenRxFlowPrms::ringMemFreeFxn

Ring memory free function callback, used in close flow

◆ dmaDescAllocFxn

EnetUdma_AllocDmaDescFxn EnetUdma_OpenRxFlowPrms::dmaDescAllocFxn

DMA HPD (host packet descriptor) memory allocation callback

◆ dmaDescFreeFxn

EnetUdma_FreeDmaDescFxn EnetUdma_OpenRxFlowPrms::dmaDescFreeFxn

Transmit HPD (host packet descriptor) memory free callback

◆ cbArg

void* EnetUdma_OpenRxFlowPrms::cbArg

Argument to be used for the callback routines (it should mean something to layer into which the callback calls)

◆ useProxy

bool EnetUdma_OpenRxFlowPrms::useProxy

Flag to indicate if a dedicated proxy should be allocated for the "FQ" for this flow. This should be enabled only for those flows that require very high throughput as there are limited proxy available in the system

◆ autoReclaimPrms

EnetUdma_AutoReclaimPrms EnetUdma_OpenRxFlowPrms::autoReclaimPrms

Buffer auto-reclaim params