PSDK QNX API Guide
udma_utils.h File Reference

UDMA utility API to make TR, get TR descriptor memory requirement. More...

Go to the source code of this file.

UDMA TR type

Various UDMA TR type supported

#define UDMA_TR_TYPE_0   (CSL_UDMAP_TR_FLAGS_TYPE_1D_DATA_MOVE)
 
#define UDMA_TR_TYPE_1   (CSL_UDMAP_TR_FLAGS_TYPE_2D_DATA_MOVE)
 
#define UDMA_TR_TYPE_2   (CSL_UDMAP_TR_FLAGS_TYPE_3D_DATA_MOVE)
 
#define UDMA_TR_TYPE_3   (CSL_UDMAP_TR_FLAGS_TYPE_4D_DATA_MOVE)
 
#define UDMA_TR_TYPE_4   (CSL_UDMAP_TR_FLAGS_TYPE_4D_DATA_MOVE_FORMATTING)
 
#define UDMA_TR_TYPE_5   (CSL_UDMAP_TR_FLAGS_TYPE_4D_CACHE_WARM)
 
#define UDMA_TR_TYPE_8   (CSL_UDMAP_TR_FLAGS_TYPE_4D_BLOCK_MOVE)
 
#define UDMA_TR_TYPE_9   (CSL_UDMAP_TR_FLAGS_TYPE_4D_BLOCK_MOVE_REPACKING)
 
#define UDMA_TR_TYPE_10   (CSL_UDMAP_TR_FLAGS_TYPE_2D_BLOCK_MOVE)
 
#define UDMA_TR_TYPE_11   (CSL_UDMAP_TR_FLAGS_TYPE_2D_BLOCK_MOVE_REPACKING)
 
#define UDMA_TR_TYPE_15   (CSL_UDMAP_TR_FLAGS_TYPE_4D_BLOCK_MOVE_REPACKING_INDIRECTION)
 
#define UDMA_GET_TRPD_TR15_SIZE(n)   (UDMA_ALIGN_SIZE(sizeof(CSL_UdmapTR15) + ((n) * (sizeof(CSL_UdmapTR15) + 4U))))
 UDMA TR15 packet descriptor memory size in bytes. This contains the CSL_UdmapCppi5TRPD + Padding to sizeof(CSL_UdmapTR15) + N* Type_15 TR (CSL_UdmapTR15) + N* TR response of 4 bytes. Since CSL_UdmapCppi5TRPD header is less than CSL_UdmapTR15, CSL_UdmapTR15 itself is used for size alignment. More...
 
#define UDMA_TR1_OFFSET   (64U)
 Offset for TR1 type TR from TRPD start address. More...
 
uint32_t UdmaUtils_getRingMemSize (uint8_t mode, uint32_t elemCnt, uint8_t elemSize)
 UDMA get ring size utility API. More...
 
static void UdmaUtils_makeTrpd (void *pTrpd, uint32_t trType, uint32_t trCnt, uint32_t cqRingNum)
 UDMA utility API to make TRPD. Other TRPD make APIs should be called only after this API. More...
 
uint32_t UdmaUtils_getTrSizeEncoded (uint32_t trType)
 Returns the size of TR (encoded) based on the type. More...
 
uint32_t UdmaUtils_getTrSizeBytes (uint32_t trType)
 Returns the size of TR in bytes based on the type. More...
 
CSL_UdmapTR1 * UdmaUtils_getTrpdTr1Pointer (uint8_t *trpdMem, uint32_t trIndex)
 Returns the TR1 pointer in the TRPD memory based on the index. More...
 

Detailed Description

UDMA utility API to make TR, get TR descriptor memory requirement.