AM64x MCU+ SDK  11.02.00

Detailed Description

UDMA driver object.

Note: This is an internal/private driver structure and should not be used or modified by caller.

Data Fields

uint32_t instType
 
uint32_t raType
 
CSL_UdmapCfg udmapRegs
 
CSL_RingAccCfg raRegs
 
CSL_IntaggrCfg iaRegs
 
uint32_t udmapSrcThreadOffset
 
uint32_t udmapDestThreadOffset
 
uint32_t maxRings
 
uint32_t maxProxy
 
uint32_t maxRingMon
 
CSL_ProxyCfg proxyCfg
 
CSL_ProxyTargetParams proxyTargetRing
 
uint32_t proxyTargetNumRing
 
uint16_t devIdRing
 
uint16_t devIdUdma
 
uint16_t devIdPsil
 
uint16_t devIdIa
 
uint16_t devIdIr
 
uint16_t devIdProxy
 
uint16_t devIdCore
 
uint16_t srcIdRingIrq
 
uint32_t blkCopyRingIrqOffset
 
uint32_t txRingIrqOffset
 
uint32_t rxRingIrqOffset
 
uint16_t srcIdTrIrq
 
uint32_t blkCopyTrIrqOffset
 
uint32_t txTrIrqOffset
 
uint32_t rxTrIrqOffset
 
uint32_t txChOffset
 
uint32_t extChOffset
 
uint32_t rxChOffset
 
uint32_t iaGemOffset
 
uint32_t trigGemOffset
 
Udma_EventObject globalEventObj
 
Udma_EventHandle globalEventHandle
 
Udma_InitPrms initPrms
 
Udma_RmInitPrms rmInitPrms
 
uint32_t drvInitDone
 
uint32_t blkCopyChFlag [UDMA_RM_BLK_COPY_CH_ARR_SIZE]
 
uint32_t blkCopyHcChFlag [UDMA_RM_BLK_COPY_HC_CH_ARR_SIZE]
 
uint32_t blkCopyUhcChFlag [UDMA_RM_BLK_COPY_UHC_CH_ARR_SIZE]
 
uint32_t txChFlag [UDMA_RM_TX_CH_ARR_SIZE]
 
uint32_t txHcChFlag [UDMA_RM_TX_HC_CH_ARR_SIZE]
 
uint32_t txUhcChFlag [UDMA_RM_TX_UHC_CH_ARR_SIZE]
 
uint32_t rxChFlag [UDMA_RM_RX_CH_ARR_SIZE]
 
uint32_t rxHcChFlag [UDMA_RM_RX_HC_CH_ARR_SIZE]
 
uint32_t rxUhcChFlag [UDMA_RM_RX_UHC_CH_ARR_SIZE]
 
uint32_t freeRingFlag [UDMA_RM_FREE_RING_ARR_SIZE]
 
uint32_t freeFlowFlag [UDMA_RM_FREE_FLOW_ARR_SIZE]
 
uint32_t globalEventFlag [UDMA_RM_GLOBAL_EVENT_ARR_SIZE]
 
uint32_t vintrFlag [UDMA_RM_VINTR_ARR_SIZE]
 
uint32_t irIntrFlag [UDMA_RM_IR_INTR_ARR_SIZE]
 
SemaphoreP_Object * rmLock
 
SemaphoreP_Object rmLockObj
 

Field Documentation

◆ instType

uint32_t Udma_DrvObject::instType

Udma Instance Type

◆ raType

uint32_t Udma_DrvObject::raType

Udma Ring Accelerator Type

◆ udmapRegs

CSL_UdmapCfg Udma_DrvObject::udmapRegs

UDMAP register configuration

◆ raRegs

CSL_RingAccCfg Udma_DrvObject::raRegs

RA register configuration

◆ iaRegs

CSL_IntaggrCfg Udma_DrvObject::iaRegs

Interrupt Aggregator configuration

◆ udmapSrcThreadOffset

uint32_t Udma_DrvObject::udmapSrcThreadOffset

UDMAP Source/TX thread offset

◆ udmapDestThreadOffset

uint32_t Udma_DrvObject::udmapDestThreadOffset

UDMAP Dest/RX thread offset

◆ maxRings

uint32_t Udma_DrvObject::maxRings

Maximun number of rings present in the NAVSS instance

◆ maxProxy

uint32_t Udma_DrvObject::maxProxy

Maximun number of proxy present in the NAVSS instance

◆ maxRingMon

uint32_t Udma_DrvObject::maxRingMon

Maximun number of ring monitors present in the NAVSS instance

◆ proxyCfg

CSL_ProxyCfg Udma_DrvObject::proxyCfg

◆ proxyTargetRing

CSL_ProxyTargetParams Udma_DrvObject::proxyTargetRing

◆ proxyTargetNumRing

uint32_t Udma_DrvObject::proxyTargetNumRing

◆ devIdRing

uint16_t Udma_DrvObject::devIdRing

Ring RM ID

◆ devIdUdma

uint16_t Udma_DrvObject::devIdUdma

UDMA RM ID

◆ devIdPsil

uint16_t Udma_DrvObject::devIdPsil

PSIL RM ID

◆ devIdIa

uint16_t Udma_DrvObject::devIdIa

IA RM ID

◆ devIdIr

uint16_t Udma_DrvObject::devIdIr

IR RM ID

◆ devIdProxy

uint16_t Udma_DrvObject::devIdProxy

Proxy RM ID

◆ devIdCore

uint16_t Udma_DrvObject::devIdCore

Core RM ID

◆ srcIdRingIrq

uint16_t Udma_DrvObject::srcIdRingIrq

Ring completion event IRQ Source ID.

◆ blkCopyRingIrqOffset

uint32_t Udma_DrvObject::blkCopyRingIrqOffset

Block Copy channel ring completion event IRQ offset.

◆ txRingIrqOffset

uint32_t Udma_DrvObject::txRingIrqOffset

TX channel ring completion event IRQ offset.

◆ rxRingIrqOffset

uint32_t Udma_DrvObject::rxRingIrqOffset

RX channel ring completion event IRQ offset.

◆ srcIdTrIrq

uint16_t Udma_DrvObject::srcIdTrIrq

TR event IRQ Source ID.

◆ blkCopyTrIrqOffset

uint32_t Udma_DrvObject::blkCopyTrIrqOffset

Block Copy channel TR event IRQ offset.

◆ txTrIrqOffset

uint32_t Udma_DrvObject::txTrIrqOffset

TX channel TR event IRQ offset.

◆ rxTrIrqOffset

uint32_t Udma_DrvObject::rxTrIrqOffset

RX channel TR event IRQ offset.

◆ txChOffset

uint32_t Udma_DrvObject::txChOffset

TX channel offset.

◆ extChOffset

uint32_t Udma_DrvObject::extChOffset

External channel offset.

◆ rxChOffset

uint32_t Udma_DrvObject::rxChOffset

RX channel offset.

◆ iaGemOffset

uint32_t Udma_DrvObject::iaGemOffset

IA global event map offset to differentiate between main and MCU NAVSS

◆ trigGemOffset

uint32_t Udma_DrvObject::trigGemOffset

UDMAP trigger global event map offset to differentiate between main and MCU NAVSS

◆ globalEventObj

Udma_EventObject Udma_DrvObject::globalEventObj

Object to store global event.

◆ globalEventHandle

Udma_EventHandle Udma_DrvObject::globalEventHandle

Global event handle.

◆ initPrms

Udma_InitPrms Udma_DrvObject::initPrms

Object to store the init params.

◆ rmInitPrms

Udma_RmInitPrms Udma_DrvObject::rmInitPrms

RM init parameters

◆ drvInitDone

uint32_t Udma_DrvObject::drvInitDone

Flag to check if the driver object is init properly or not.

◆ blkCopyChFlag

uint32_t Udma_DrvObject::blkCopyChFlag[UDMA_RM_BLK_COPY_CH_ARR_SIZE]

UDMA Block copy channel allocation flag

◆ blkCopyHcChFlag

uint32_t Udma_DrvObject::blkCopyHcChFlag[UDMA_RM_BLK_COPY_HC_CH_ARR_SIZE]

UDMA high capacity Block copy channel allocation flag

◆ blkCopyUhcChFlag

uint32_t Udma_DrvObject::blkCopyUhcChFlag[UDMA_RM_BLK_COPY_UHC_CH_ARR_SIZE]

UDMA ultra high capacity Block copy channel allocation flag

◆ txChFlag

uint32_t Udma_DrvObject::txChFlag[UDMA_RM_TX_CH_ARR_SIZE]

UDMA TX channel allocation flag

◆ txHcChFlag

uint32_t Udma_DrvObject::txHcChFlag[UDMA_RM_TX_HC_CH_ARR_SIZE]

UDMA high capacity TX channel allocation flag

◆ txUhcChFlag

uint32_t Udma_DrvObject::txUhcChFlag[UDMA_RM_TX_UHC_CH_ARR_SIZE]

UDMA ultra high capacity TX channel allocation flag

◆ rxChFlag

uint32_t Udma_DrvObject::rxChFlag[UDMA_RM_RX_CH_ARR_SIZE]

UDMA RX channel allocation flag

◆ rxHcChFlag

uint32_t Udma_DrvObject::rxHcChFlag[UDMA_RM_RX_HC_CH_ARR_SIZE]

UDMA high capacity RX channel allocation flag

◆ rxUhcChFlag

uint32_t Udma_DrvObject::rxUhcChFlag[UDMA_RM_RX_UHC_CH_ARR_SIZE]

UDMA ultra high capacity RX channel allocation flag

◆ freeRingFlag

uint32_t Udma_DrvObject::freeRingFlag[UDMA_RM_FREE_RING_ARR_SIZE]

UDMA free ring allocation flag

◆ freeFlowFlag

uint32_t Udma_DrvObject::freeFlowFlag[UDMA_RM_FREE_FLOW_ARR_SIZE]

UDMA free flow allocation flag

◆ globalEventFlag

uint32_t Udma_DrvObject::globalEventFlag[UDMA_RM_GLOBAL_EVENT_ARR_SIZE]

IA global event allocation flag

◆ vintrFlag

uint32_t Udma_DrvObject::vintrFlag[UDMA_RM_VINTR_ARR_SIZE]

IA VINTR allocation flag

◆ irIntrFlag

uint32_t Udma_DrvObject::irIntrFlag[UDMA_RM_IR_INTR_ARR_SIZE]

IR interrupt allocation flag

◆ rmLock

SemaphoreP_Object* Udma_DrvObject::rmLock

Mutex to protect RM allocation.

◆ rmLockObj

SemaphoreP_Object Udma_DrvObject::rmLockObj

Mutex object.