|
AM62Ax MCU+ SDK
10.01.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)
86 #define UDMA_SYSFW_EXTENDED_CH_TYPE_BCDMA_BLK_CPY ((uint8_t) 1U)
89 #define UDMA_SYSFW_EXTENDED_CH_TYPE_BCDMA_SPLIT_TR_TX ((uint8_t) 0U)
101 #define UDMA_CH_FLAG_TX ((uint32_t) 0x0001U)
103 #define UDMA_CH_FLAG_RX ((uint32_t) 0x0002U)
105 #define UDMA_CH_FLAG_BLK_COPY ((uint32_t) 0x0004U)
107 #define UDMA_CH_FLAG_PDMA ((uint32_t) 0x0008U)
109 #define UDMA_CH_FLAG_PSIL ((uint32_t) 0x0010U)
111 #define UDMA_CH_FLAG_UTC ((uint32_t) 0x0020U)
113 #define UDMA_CH_FLAG_HC ((uint32_t) 0x0040U)
115 #define UDMA_CH_FLAG_UHC ((uint32_t) 0x0080U)
117 #define UDMA_CH_FLAG_MAPPED ((uint32_t) 0x0100U)
129 #define UDMA_CH_TYPE_TR_BLK_COPY (UDMA_CH_FLAG_BLK_COPY | \
133 #define UDMA_CH_TYPE_TR_BLK_COPY_HC (UDMA_CH_FLAG_BLK_COPY | \
138 #define UDMA_CH_TYPE_TR_BLK_COPY_UHC (UDMA_CH_FLAG_BLK_COPY | \
143 #define UDMA_CH_TYPE_TX (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL)
145 #define UDMA_CH_TYPE_TX_HC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_HC)
147 #define UDMA_CH_TYPE_TX_UHC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_UHC)
150 #define UDMA_CH_TYPE_RX (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL)
152 #define UDMA_CH_TYPE_RX_HC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_HC)
154 #define UDMA_CH_TYPE_RX_UHC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_UHC)
157 #define UDMA_CH_TYPE_PDMA_TX (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA)
159 #define UDMA_CH_TYPE_PDMA_TX_HC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_HC)
161 #define UDMA_CH_TYPE_PDMA_TX_UHC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_UHC)
164 #define UDMA_CH_TYPE_PDMA_RX (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA)
166 #define UDMA_CH_TYPE_PDMA_RX_HC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_HC)
168 #define UDMA_CH_TYPE_PDMA_RX_UHC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_UHC)
175 #define UDMA_CH_TYPE_TX_MAPPED (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_MAPPED)
181 #define UDMA_CH_TYPE_RX_MAPPED (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_MAPPED)
189 #define UDMA_CH_TYPE_UTC (UDMA_CH_FLAG_UTC)
198 #define UDMA_PDMA_ES_8BITS ((uint32_t) 0x00U)
199 #define UDMA_PDMA_ES_16BITS ((uint32_t) 0x01U)
200 #define UDMA_PDMA_ES_24BITS ((uint32_t) 0x02U)
201 #define UDMA_PDMA_ES_32BITS ((uint32_t) 0x03U)
202 #define UDMA_PDMA_ES_64BITS ((uint32_t) 0x04U)
204 #define UDMA_PDMA_ES_DONTCARE ((uint32_t) 0x00U)
475 #if (UDMA_NUM_UTC_INSTANCE > 0)
690 #if defined (BUILD_C7X)
702 void Udma_chDruSubmitTr(
Udma_ChHandle chHandle,
const CSL_UdmapTR *tr);
1046 uint64_t *eleInRing);
1121 #if (UDMA_NUM_UTC_INSTANCE > 0)
1140 uint32_t startThreadId;
1155 typedef struct Udma_ChObject_t
1157 uintptr_t rsv[178U];
Udma_RingHandle Udma_chGetCqRingHandle(Udma_ChHandle chHandle)
Returns the default completion ring handle of the channel.
uint8_t pauseOnError
Definition: udma_ch.h:356
uint32_t startedByteCnt
Definition: udma_ch.h:582
void * Udma_FlowHandle
UDMA flow handle.
Definition: udma_types.h:73
uint16_t flowIdFwRangeStart
Definition: udma_ch.h:375
UDMA TX channel parameters.
Definition: udma_ch.h:282
UDMA channel open parameters.
Definition: udma_ch.h:215
uint8_t ignoreLongPkts
Definition: udma_ch.h:396
UDMA ring parameters.
Definition: udma_ring.h:124
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:555
int32_t Udma_chReset(Udma_ChHandle chHandle)
Hard reset the channel if teardown fails.
uint32_t configDefaultFlow
Definition: udma_ch.h:400
uint16_t fetchWordSize
Definition: udma_ch.h:294
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:386
UDMA RX channel parameters.
Definition: udma_ch.h:355
Udma_RingHandle Udma_chGetTdCqRingHandle(Udma_ChHandle chHandle)
Returns the teardown completion ring handle of the channel.
uint8_t txCredit
Definition: udma_ch.h:306
uint8_t busOrderId
Definition: udma_ch.h:300
int32_t Udma_chDisable(Udma_ChHandle chHandle, uint32_t timeout)
UDMA channel teardown and disable API.
uint32_t elemCnt
Definition: udma_ch.h:511
uint8_t ignoreShortPkts
Definition: udma_ch.h:392
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:501
void UdmaChPdmaPrms_init(Udma_ChPdmaPrms *pdmaPrms)
Udma_ChPdmaPrms structure init function.
uint32_t mappedChGrp
Definition: udma_ch.h:249
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 and External (UTC) channel types.
int32_t Udma_chPause(Udma_ChHandle chHandle)
UDMA channel pause API.
Udma_RingPrms fqRingPrms
Definition: udma_ch.h:262
Udma_FlowHandle Udma_chGetDefaultFlowHandle(Udma_ChHandle chHandle)
Returns the default flow handle of the RX channel.
uint8_t busPriority
Definition: udma_ch.h:365
uint8_t flowPsInfoPresent
Definition: udma_ch.h:383
uint8_t flowSopOffset
Definition: udma_ch.h:389
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:269
Udma_RingPrms cqRingPrms
Definition: udma_ch.h:264
void * Udma_RingHandle
UDMA ring handle.
Definition: udma_types.h:71
uint8_t flowEInfoPresent
Definition: udma_ch.h:380
uint16_t fetchWordSize
Definition: udma_ch.h:442
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:502
Opaque UDMA channel object.
Definition: udma_ch.h:1156
int32_t Udma_chResume(Udma_ChHandle chHandle)
UDMA channel resume API.
uint8_t supressTdCqPkt
Definition: udma_ch.h:467
UDMA UTC channel parameters.
Definition: udma_ch.h:434
uint8_t burstSize
Definition: udma_ch.h:323
uint8_t filterPsWords
Definition: udma_ch.h:287
uint8_t busPriority
Definition: udma_ch.h:296
uint8_t busPriority
Definition: udma_ch.h:444
void * Udma_chGetSwTriggerRegister(Udma_ChHandle chHandle)
Returns the software trigger register address for the channel.
uint32_t chNum
Definition: udma_ch.h:216
uint32_t fifoCnt
Definition: udma_ch.h:530
void UdmaChUtcPrms_init(Udma_ChUtcPrms *utcPrms)
Udma_ChUtcPrms structure init function.
uint8_t addrType
Definition: udma_ch.h:289
uint16_t fetchWordSize
Definition: udma_ch.h:363
uint8_t burstSize
Definition: udma_ch.h:454
uint32_t Udma_chGetTriggerEvent(Udma_ChHandle chHandle, uint32_t trigger)
Returns the global trigger event for the channel.
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.
uint8_t chanType
Definition: udma_ch.h:440
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:226
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.
uint8_t dmaPriority
Definition: udma_ch.h:450
uint32_t completedByteCnt
Definition: udma_ch.h:580
uint8_t dmaPriority
Definition: udma_ch.h:371
UDMA channel statistics.
Definition: udma_ch.h:577
int32_t Udma_chConfigUtc(Udma_ChHandle chHandle, const Udma_ChUtcPrms *utcPrms)
UDMA configure UTC channel.
uint16_t fifoDepth
Definition: udma_ch.h:308
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:342
uint8_t busQos
Definition: udma_ch.h:446
uint8_t pauseOnError
Definition: udma_ch.h:435
uint8_t busOrderId
Definition: udma_ch.h:448
uint8_t pauseOnError
Definition: udma_ch.h:283
uint16_t flowIdFwRangeCnt
Definition: udma_ch.h:377
uint8_t eol
Definition: udma_ch.h:563
int32_t Udma_chClose(Udma_ChHandle chHandle)
UDMA close channel.
uint32_t packetCnt
Definition: udma_ch.h:578
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:292
void * appData
Definition: udma_ch.h:257
uint8_t burstSize
Definition: udma_ch.h:408
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:302
uint8_t busOrderId
Definition: udma_ch.h:369
uint8_t filterEinfo
Definition: udma_ch.h:285
uint32_t utcId
Definition: udma_ch.h:244
uint8_t addrType
Definition: udma_ch.h:358
uint8_t chanType
Definition: udma_ch.h:361
uint8_t addrType
Definition: udma_ch.h:437
uint8_t burst
Definition: udma_ch.h:547
uint8_t busQos
Definition: udma_ch.h:298
int32_t Udma_chBreakChaining(Udma_ChHandle triggerChHandle, Udma_ChHandle chainedChHandle)
Breaks the chaining by resetting the trigger channel's OES.
int32_t Udma_chConfigRx(Udma_ChHandle chHandle, const Udma_ChRxPrms *rxPrms)
UDMA configure RX channel.
uint8_t busQos
Definition: udma_ch.h:367
uint16_t Udma_chGetFqRingNum(Udma_ChHandle chHandle)
Returns the default free ring number to be programmed in descriptor.