PDK API Guide for J721E
|
This is UDMA driver utilty parameters and API
Files | |
file | udma_utils.h |
UDMA utility API to make TR, get TR descriptor memory requirement. | |
Functions | |
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... | |
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_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) |
uint32_t UdmaUtils_getRingMemSize | ( | uint8_t | mode, |
uint32_t | elemCnt, | ||
uint8_t | elemSize | ||
) |
UDMA get ring size utility API.
mode | [IN] Ring mode. Refer tisci_msg_rm_ring_cfg_req::mode |
elemCnt | [IN] Ring element count. |
elemSize | [IN] Ring element size. Refer Udma_RingElemSize |
|
inlinestatic |
UDMA utility API to make TRPD. Other TRPD make APIs should be called only after this API.
Note: This sets the most commonly used value for all the fields. User can override the fields after calling this API if required.
pTrpd | [IN] Pointer to TRPD memory |
trType | [IN] TR type. Refer Udma_TrType |
trCnt | [IN] Number of TR entries present in the TRPD |
cqRingNum | [IN] Completion ring number where the TRPD is returned after processing |
uint32_t UdmaUtils_getTrSizeEncoded | ( | uint32_t | trType | ) |
Returns the size of TR (encoded) based on the type.
trType | [IN] TR type. Refer Udma_TrType |
uint32_t UdmaUtils_getTrSizeBytes | ( | uint32_t | trType | ) |
Returns the size of TR in bytes based on the type.
trType | [IN] TR type. Refer Udma_TrType |