 |
AM62L FreeRTOS SDK
11.00.00
|
|
Go to the documentation of this file.
69 #define UDMA_DMA_CH_INVALID ((uint32_t) 0xFFFF0000U)
74 #define UDMA_DMA_CH_ANY ((uint32_t) 0xFFFF0001U)
79 #define UDMA_DMA_CH_NA ((uint32_t) 0xFFFF0002U)
81 #define UDMA_UTC_ID_INVALID ((uint32_t) 0xFFFF0003U)
83 #define UDMA_MAPPED_GROUP_INVALID ((uint32_t) 0xFFFF0004U)
95 #define UDMA_CH_FLAG_TX ((uint32_t) 0x0001U)
97 #define UDMA_CH_FLAG_RX ((uint32_t) 0x0002U)
99 #define UDMA_CH_FLAG_BLK_COPY ((uint32_t) 0x0004U)
101 #define UDMA_CH_FLAG_PDMA ((uint32_t) 0x0008U)
103 #define UDMA_CH_FLAG_PSIL ((uint32_t) 0x0010U)
105 #define UDMA_CH_FLAG_UTC ((uint32_t) 0x0020U)
107 #define UDMA_CH_FLAG_HC ((uint32_t) 0x0040U)
109 #define UDMA_CH_FLAG_UHC ((uint32_t) 0x0080U)
111 #define UDMA_CH_FLAG_MAPPED ((uint32_t) 0x0100U)
123 #define UDMA_CH_TYPE_TR_BLK_COPY (UDMA_CH_FLAG_BLK_COPY | \
127 #define UDMA_CH_TYPE_TR_BLK_COPY_HC (UDMA_CH_FLAG_BLK_COPY | \
132 #define UDMA_CH_TYPE_TR_BLK_COPY_UHC (UDMA_CH_FLAG_BLK_COPY | \
137 #define UDMA_CH_TYPE_TX (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL)
139 #define UDMA_CH_TYPE_TX_HC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_HC)
141 #define UDMA_CH_TYPE_TX_UHC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_UHC)
144 #define UDMA_CH_TYPE_RX (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL)
146 #define UDMA_CH_TYPE_RX_HC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_HC)
148 #define UDMA_CH_TYPE_RX_UHC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_UHC)
151 #define UDMA_CH_TYPE_PDMA_TX (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA)
153 #define UDMA_CH_TYPE_PDMA_TX_HC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_HC)
155 #define UDMA_CH_TYPE_PDMA_TX_UHC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_UHC)
158 #define UDMA_CH_TYPE_PDMA_RX (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA)
160 #define UDMA_CH_TYPE_PDMA_RX_HC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_HC)
162 #define UDMA_CH_TYPE_PDMA_RX_UHC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_UHC)
169 #define UDMA_CH_TYPE_TX_MAPPED (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_MAPPED)
175 #define UDMA_CH_TYPE_RX_MAPPED (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_MAPPED)
185 #define UDMA_PDMA_ES_8BITS ((uint32_t) 0x00U)
186 #define UDMA_PDMA_ES_16BITS ((uint32_t) 0x01U)
187 #define UDMA_PDMA_ES_24BITS ((uint32_t) 0x02U)
188 #define UDMA_PDMA_ES_32BITS ((uint32_t) 0x03U)
189 #define UDMA_PDMA_ES_64BITS ((uint32_t) 0x04U)
191 #define UDMA_PDMA_ES_DONTCARE ((uint32_t) 0x00U)
863 uint64_t *eleInRing);
974 typedef struct Udma_ChObject_t
Udma_RingHandle Udma_chGetCqRingHandle(Udma_ChHandle chHandle)
Returns the default completion ring handle of the channel.
uint8_t pauseOnError
Definition: udma_ch.h:336
uint32_t startedByteCnt
Definition: udma_ch.h:481
void * Udma_FlowHandle
UDMA flow handle.
Definition: udma_types.h:73
uint16_t flowIdFwRangeStart
Definition: udma_ch.h:353
UDMA TX channel parameters.
Definition: udma_ch.h:262
UDMA channel open parameters.
Definition: udma_ch.h:202
uint8_t ignoreLongPkts
Definition: udma_ch.h:366
UDMA ring parameters.
Definition: udma_ring.h:133
int32_t Udma_chOpen(Udma_DrvHandle drvHandle, Udma_ChHandle chHandle, uint32_t chType, const Udma_ChPrms *chPrms)
UDMA open channel.
uint8_t acc32
Definition: udma_ch.h:454
int32_t Udma_chReset(Udma_ChHandle chHandle)
Hard reset the channel if teardown fails.
uint32_t configDefaultFlow
Definition: udma_ch.h:370
uint16_t fetchWordSize
Definition: udma_ch.h:273
int32_t Udma_chEnable(Udma_ChHandle chHandle)
UDMA channel enable API.
void * Udma_ChHandle
UDMA channel handle.
Definition: udma_types.h:67
uint8_t flowErrorHandling
Definition: udma_ch.h:362
UDMA RX channel parameters.
Definition: udma_ch.h:335
Udma_RingHandle Udma_chGetTdCqRingHandle(Udma_ChHandle chHandle)
Returns the teardown completion ring handle of the channel.
uint8_t txCredit
Definition: udma_ch.h:284
uint8_t busOrderId
Definition: udma_ch.h:279
int32_t Udma_chDisable(Udma_ChHandle chHandle, uint32_t timeout)
UDMA channel teardown and disable API.
uint32_t elemCnt
Definition: udma_ch.h:410
int32_t Udma_chRingDeQueueRaw(Udma_ChHandle chHandle, uint64_t noElem, uint64_t *eleInRing)
De Queue elements from the ring.
UDMA PDMA channel Static TR parameters.
Definition: udma_ch.h:400
void UdmaChPdmaPrms_init(Udma_ChPdmaPrms *pdmaPrms)
Udma_ChPdmaPrms structure init function.
uint32_t mappedChGrp
Definition: udma_ch.h:229
int32_t Udma_chGetStats(Udma_ChHandle chHandle, Udma_ChStats *chStats)
Get real-time channel statistics.
uint32_t Udma_chGetNum(Udma_ChHandle chHandle)
Returns the channel number offset with in a channel type - TX, RX channel types.
int32_t Udma_chPause(Udma_ChHandle chHandle)
UDMA channel pause API.
Udma_RingPrms fqRingPrms
Definition: udma_ch.h:242
int32_t Udma_TeardownChan(Udma_ChHandle chHandle)
Enable channel teardown.
Udma_FlowHandle Udma_chGetDefaultFlowHandle(Udma_ChHandle chHandle)
Returns the default flow handle of the RX channel.
uint8_t busPriority
Definition: udma_ch.h:344
uint8_t flowPsInfoPresent
Definition: udma_ch.h:360
uint8_t flowSopOffset
Definition: udma_ch.h:364
int32_t Udma_chConfigTx(Udma_ChHandle chHandle, const Udma_ChTxPrms *txPrms)
UDMA configure TX channel.
int32_t Udma_chSetSwTrigger(Udma_ChHandle chHandle, uint32_t trigger)
Sets the software trigger register based on the trigger mode provided.
Udma_RingPrms tdCqRingPrms
Definition: udma_ch.h:249
Udma_RingPrms cqRingPrms
Definition: udma_ch.h:244
void * Udma_RingHandle
UDMA ring handle.
Definition: udma_types.h:71
uint8_t flowEInfoPresent
Definition: udma_ch.h:358
int32_t Udma_getPeerData(Udma_ChHandle chHandle, uint32_t *peerData)
Get real-time peer data which contains number of bytes written.
uint32_t elemSize
Definition: udma_ch.h:401
Opaque UDMA channel object.
Definition: udma_ch.h:975
int32_t Udma_chResume(Udma_ChHandle chHandle)
UDMA channel resume API.
uint8_t burstSize
Definition: udma_ch.h:301
uint8_t filterPsWords
Definition: udma_ch.h:267
uint8_t busPriority
Definition: udma_ch.h:275
void * Udma_chGetSwTriggerRegister(Udma_ChHandle chHandle)
Returns the software trigger register address for the channel.
uint32_t chNum
Definition: udma_ch.h:203
int32_t Udma_chDecStats(Udma_ChHandle chHandle, Udma_ChStats *chStats)
Decrement real-time channel statistics.
uint32_t fifoCnt
Definition: udma_ch.h:429
uint8_t addrType
Definition: udma_ch.h:269
uint16_t fetchWordSize
Definition: udma_ch.h:342
uint8_t tdType
Definition: udma_ch.h:323
int32_t Udma_chGetChanEnStatus(Udma_ChHandle chHandle, uint8_t *chEnableStat)
Get the channel enable status.
uint16_t Udma_chGetCqRingNum(Udma_ChHandle chHandle)
Returns the default completion ring number to be programmed in descriptor.
void UdmaChPrms_init(Udma_ChPrms *chPrms, uint32_t chType)
Udma_ChPrms structure init function.
int32_t Udma_chSetChaining(Udma_ChHandle triggerChHandle, Udma_ChHandle chainedChHandle, uint32_t trigger)
Chains the trigger channel with the chained channel.
uint32_t peerChNum
Definition: udma_ch.h:213
void UdmaChTxPrms_init(Udma_ChTxPrms *txPrms, uint32_t chType)
Udma_ChTxPrms structure init function.
void UdmaChRxPrms_init(Udma_ChRxPrms *rxPrms, uint32_t chType)
Udma_ChRxPrms structure init function.
uint32_t completedByteCnt
Definition: udma_ch.h:479
uint8_t dmaPriority
Definition: udma_ch.h:350
UDMA channel statistics.
Definition: udma_ch.h:476
uint16_t fifoDepth
Definition: udma_ch.h:286
int32_t Udma_chRingRingDbRaw(Udma_ChHandle chHandle, uint64_t noOfEntries)
Ring Forward door bell.
int32_t Udma_clearPeerData(Udma_ChHandle chHandle, uint32_t peerData)
Clear real-time peer data which contains number of bytes written.
void * Udma_DrvHandle
UDMA driver handle.
Definition: udma_types.h:65
uint8_t supressTdCqPkt
Definition: udma_ch.h:316
uint8_t pauseOnError
Definition: udma_ch.h:263
uint16_t flowIdFwRangeCnt
Definition: udma_ch.h:355
uint8_t eol
Definition: udma_ch.h:462
int32_t Udma_chClose(Udma_ChHandle chHandle)
UDMA close channel.
uint32_t packetCnt
Definition: udma_ch.h:477
Udma_RingHandle Udma_chGetFqRingHandle(Udma_ChHandle chHandle)
Returns the default free ring handle of the channel.
int32_t Udma_chConfigPdma(Udma_ChHandle chHandle, const Udma_ChPdmaPrms *pdmaPrms)
UDMA configure PDMA channel (peerChNum as part of Udma_ChPrms) paired with the UDMAP channel.
uint8_t chanType
Definition: udma_ch.h:271
void * appData
Definition: udma_ch.h:237
uint8_t burstSize
Definition: udma_ch.h:378
int32_t Udma_chRingRingRvrDbRaw(Udma_ChHandle chHandle, uint64_t noOfEntries)
Ring Forward door bell.
int32_t Udma_chRingQueueRaw(Udma_ChHandle chHandle, uint8_t *phyDescMem, uint64_t noEleCnt)
Queue TR into channels ring.
uint8_t dmaPriority
Definition: udma_ch.h:281
uint8_t busOrderId
Definition: udma_ch.h:348
uint8_t filterEinfo
Definition: udma_ch.h:265
uint8_t addrType
Definition: udma_ch.h:338
uint8_t chanType
Definition: udma_ch.h:340
uint8_t burst
Definition: udma_ch.h:446
uint8_t busQos
Definition: udma_ch.h:277
int32_t Udma_chBreakChaining(Udma_ChHandle triggerChHandle, Udma_ChHandle chainedChHandle)
Breaks the chaining by resetting the trigger channel's register.
int32_t Udma_chConfigRx(Udma_ChHandle chHandle, const Udma_ChRxPrms *rxPrms)
UDMA configure RX channel.
uint8_t busQos
Definition: udma_ch.h:346
uint16_t Udma_chGetFqRingNum(Udma_ChHandle chHandle)
Returns the default free ring number to be programmed in descriptor.