![]() |
PDK API Guide for J721E
|
Header file containing various enumerations, structure definitions and function declarations for the Universal DMA Packet (UDMAP) IP.
Go to the source code of this file.
UDMAP channel direction | |
This enumerator defines the possible channel directions | |
#define | CSL_UDMAP_CHAN_DIR_TX ((uint32_t) 0U) |
#define | CSL_UDMAP_CHAN_DIR_RX ((uint32_t) 1U) |
typedef uint32_t | CSL_UdmapChanDir |
UDMAP channel burst size | |
This enumerator defines the nominal burst size and alignment for data transfers on a TX or RX channel | |
#define | CSL_UDMAP_CHAN_BURST_SIZE_64_BYTES ((uint32_t) 1U) |
#define | CSL_UDMAP_CHAN_BURST_SIZE_128_BYTES ((uint32_t) 2U) |
#define | CSL_UDMAP_CHAN_BURST_SIZE_256_BYTES ((uint32_t) 3U) |
typedef uint32_t | CSL_UdmapChanBurstSize |
UDMAP descriptor type | |
This enumerator defines the possible descriptor types | |
#define | CSL_UDMAP_DESC_TYPE_HOST ((uint32_t) 0U) |
#define | CSL_UDMAP_DESC_TYPE_HOST_SB ((uint32_t) 1U) |
#define | CSL_UDMAP_DESC_TYPE_MONOLITHIC ((uint32_t) 2U) |
#define | CSL_UDMAP_DESC_TYPE_RESERVED ((uint32_t) 3U) |
typedef uint32_t | CSL_UdmapDescType |
UDMAP protocol-specific data location | |
This enumerator defines the ps location for the descriptor | |
#define | CSL_UDMAP_PS_LOC_DESC ((uint32_t) 0U) |
#define | CSL_UDMAP_PS_LOC_PACKET ((uint32_t) 1U) |
typedef uint32_t | CSL_UdmapPsLoc |
UDMAP address type | |
This enumerator defines the possible address types | |
#define | CSL_UDMAP_ADDR_TYPE_PHYS ((uint32_t) 0U) |
#define | CSL_UDMAP_ADDR_TYPE_INTER ((uint32_t) 1U) |
#define | CSL_UDMAP_ADDR_TYPE_VIRT ((uint32_t) 2U) |
typedef uint32_t | CSL_UdmapAddrType |
UDMAP channel type | |
This enumerator defines the possible channel types | |
#define | CSL_UDMAP_CHAN_TYPE_REF_PKT_RING ((uint32_t) 2U) |
#define | CSL_UDMAP_CHAN_TYPE_REF_PKTSB_QUEUE ((uint32_t) 3U) |
#define | CSL_UDMAP_CHAN_TYPE_REF_TR_RING ((uint32_t) 10U) |
#define | CSL_UDMAP_CHAN_TYPE_VAL_TR_RING ((uint32_t) 11U) |
#define | CSL_UDMAP_CHAN_TYPE_COPY_REF_TR_RING ((uint32_t) 12U) |
#define | CSL_UDMAP_CHAN_TYPE_COPY_VAL_TR_RING ((uint32_t) 13U) |
typedef uint32_t | CSL_UdmapChanType |
UDMAP tag select | |
This enumerator defines how tag values are determined | |
#define | CSL_UDMAP_TAG_SELECT_NO_OVERWRITE ((uint32_t) 0U) |
#define | CSL_UDMAP_TAG_SELECT_OVERWRITE_WITH_VAL ((uint32_t) 1U) |
#define | CSL_UDMAP_TAG_SELECT_OVERWRITE_WITH_FLOWID_7_0 ((uint32_t) 2U) |
#define | CSL_UDMAP_TAG_SELECT_OVERWRITE_WITH_FLOWID_15_8 ((uint32_t) 3U) |
#define | CSL_UDMAP_TAG_SELECT_OVERWRITE_WITH_TAG_7_0 ((uint32_t) 4U) |
#define | CSL_UDMAP_TAG_SELECT_OVERWRITE_WITH_TAG_15_8 ((uint32_t) 5U) |
#define | CSL_UDMAP_TAG_SELECT_INVALID ((uint32_t) 6U) |
typedef uint32_t | CSL_UdmapTagSelect |
UDMAP channel schedling priority | |
This enumerator selects which scheduling bin the channel will be placed in for bandwidth allocation of the DMA units | |
#define | CSL_UDMAP_CHAN_SCHED_PRI_HIGH ((uint32_t) 0U) |
#define | CSL_UDMAP_CHAN_SCHED_PRI_MED_HIGH ((uint32_t) 1U) |
#define | CSL_UDMAP_CHAN_SCHED_PRI_MED_LOW ((uint32_t) 2U) |
#define | CSL_UDMAP_CHAN_SCHED_PRI_LOW ((uint32_t) 3U) |
typedef uint32_t | CSL_UdmapChanSchedPri |
UDMAP VBUSM master interface identification | |
This enumerator defines the VBUSM master interfaces whose command dispatching threashold can be tuned via virtualization tuning registers. UDMAP revision 2.1.32.0 and later provides support for setting command dispatching threasholds of UDMAP VBUSM master interfaces via virtualization tuning registers. | |
#define | CSL_UDMAP_MASTER_INTERFACE_PKTDMA_0 ((uint32_t) 0U) |
#define | CSL_UDMAP_MASTER_INTERFACE_PKTDMA_1 ((uint32_t) 1U) |
#define | CSL_UDMAP_MASTER_INTERFACE_UTC_READ ((uint32_t) 2U) |
#define | CSL_UDMAP_MASTER_INTERFACE_UTC_WRITE ((uint32_t) 3U) |
typedef uint32_t | CSL_UdmapMasterInterface |
Data Structures | |
struct | CSL_UdmapRxFdqThresh |
Receive free descriptor queue threshold information. More... | |
struct | CSL_UdmapRouteTag |
Routing tag information. More... | |
struct | CSL_UdmapRevision |
Module revision information. More... | |
struct | CSL_UdmapRxFlowCfg |
Receive flow configuration information. More... | |
struct | CSL_UdmapTxChanCfg |
Transmit channel configuration information. More... | |
struct | CSL_UdmapRxChanCfg |
Receive channel configuration information. More... | |
struct | CSL_UdmapRT |
Channel runtime configuration information. More... | |
struct | CSL_UdmapCfg |
UDMAP configuration structure. More... | |
struct | CSL_UdmapRxFlowIdFirewallStatus |
UDMAP receive flow id firewall status. More... | |
struct | CSL_UdmapChanStats |
Transmit / receive channel statistics. More... | |
Macros | |
#define | CSL_UDMAP_RXFDQ_CNT (4U) |
#define | CSL_UDMAP_RXFDQ_THRESH_CNT (4U) |
#define | CSL_UDMAP_NO_EVENT (0xFFFFU) |
Functions | |
uint32_t | CSL_udmapGetRevision (const CSL_UdmapCfg *pCfg) |
Return revision of the UDMAP module. More... | |
int32_t | CSL_udmapGetRevisionInfo (const CSL_UdmapCfg *pCfg, CSL_UdmapRevision *pRev) |
Return revision information of the UDMAP module. More... | |
void | CSL_udmapGetCfg (CSL_UdmapCfg *pCfg) |
Return UDMAP configuration information. More... | |
void | CSL_udmapInitTxChanCfg (CSL_UdmapTxChanCfg *pTxChanCfg) |
Initialize a CSL_UdmapTxChanCfg structure. More... | |
void | CSL_udmapInitRxChanCfg (CSL_UdmapRxChanCfg *pRxChanCfg) |
Initialize a CSL_UdmapRxChanCfg structure. More... | |
void | CSL_udmapInitRxFlowCfg (CSL_UdmapRxFlowCfg *pFlow) |
Initialize a CSL_UdmapRxFlowCfg structure. More... | |
void | CSL_udmapSetPerfCtrl (CSL_UdmapCfg *pCfg, uint32_t rxRetryTimeoutCnt) |
Set performance control parmeters. More... | |
void | CSL_udmapSetUtcCtrl (CSL_UdmapCfg *pCfg, uint32_t startingThreadNum) |
Set UTC control parmeters. More... | |
int32_t | CSL_udmapRxFlowCfg (CSL_UdmapCfg *pCfg, uint32_t flow, const CSL_UdmapRxFlowCfg *pFlow) |
Configure an RX flow. More... | |
int32_t | CSL_udmapRxChanCfg (CSL_UdmapCfg *pCfg, uint32_t chanIdx, const CSL_UdmapRxChanCfg *pRxChanCfg) |
Configure an RX channel. More... | |
int32_t | CSL_udmapTxChanCfg (CSL_UdmapCfg *pCfg, uint32_t chanIdx, const CSL_UdmapTxChanCfg *pTxChanCfg) |
Configure a TX channel. More... | |
int32_t | CSL_udmapRxChanSetTrEvent (CSL_UdmapCfg *pCfg, uint32_t chanIdx, uint32_t trEventNum) |
Configure an RX channel TR event. More... | |
int32_t | CSL_udmapTxChanSetTrEvent (CSL_UdmapCfg *pCfg, uint32_t chanIdx, uint32_t trEventNum) |
Configure an TX channel TR event. More... | |
int32_t | CSL_udmapRxChanSetBurstSize (CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapChanBurstSize burstSize) |
Configure RX channel burst size. More... | |
int32_t | CSL_udmapTxChanSetBurstSize (CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapChanBurstSize burstSize) |
Configure TX channel burst size. More... | |
int32_t | CSL_udmapGetRxRT (const CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapRT *pRT) |
Get an RX channel's real-time register values. More... | |
int32_t | CSL_udmapGetTxRT (const CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapRT *pRT) |
Get a TX channel's real-time register values. More... | |
int32_t | CSL_udmapSetRxRT (CSL_UdmapCfg *pCfg, uint32_t chanIdx, const CSL_UdmapRT *pRT) |
Set an RX channel's real-time register values. More... | |
int32_t | CSL_udmapSetTxRT (CSL_UdmapCfg *pCfg, uint32_t chanIdx, const CSL_UdmapRT *pRT) |
Set a TX channel's real-time register values. More... | |
int32_t | CSL_udmapEnableTxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Enable a transmit channel. More... | |
int32_t | CSL_udmapDisableTxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Disable a transmit channel. More... | |
int32_t | CSL_udmapTeardownTxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx, bool bForce, bool bWait) |
Teardown a transmit channel. More... | |
int32_t | CSL_udmapPauseTxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Pause a transmit channel. More... | |
int32_t | CSL_udmapUnpauseTxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Un-pause a transmit channel. More... | |
int32_t | CSL_udmapTriggerTxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Send a trigger event to a TX channel. More... | |
void | CSL_udmapClearTxChanError (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Clear error indication in a transmit channel. More... | |
int32_t | CSL_udmapEnableRxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Enable a receive channel. More... | |
int32_t | CSL_udmapDisableRxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Disable a receive channel. More... | |
int32_t | CSL_udmapTeardownRxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx, bool bForce, bool bWait) |
Teardown a receive channel. More... | |
int32_t | CSL_udmapPauseRxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Pause a receive channel. More... | |
int32_t | CSL_udmapUnpauseRxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Un-pause a receive channel. More... | |
int32_t | CSL_udmapTriggerRxChan (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Send a trigger event to an RX channel. More... | |
void | CSL_udmapClearRxChanError (CSL_UdmapCfg *pCfg, uint32_t chanIdx) |
Clear error indication in a receive channel. More... | |
void | CSL_udmapCfgRxFlowIdFirewall (CSL_UdmapCfg *pCfg, uint32_t outEvtNum) |
Configure the receive flow ID range firewall. More... | |
bool | CSL_udmapGetRxFlowIdFirewallStatus (CSL_UdmapCfg *pCfg, CSL_UdmapRxFlowIdFirewallStatus *pRxFlowIdFwStatus) |
Get receive flow ID range firewall status information. More... | |
void | CSL_udmapGetChanStats (const CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapChanDir chanDir, CSL_UdmapChanStats *pChanStats) |
Get channel statistics. More... | |
void | CSL_udmapDecChanStats (CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapChanDir chanDir, const CSL_UdmapChanStats *pChanStats) |
Decrement channel statistics. More... | |
int32_t | CSL_udmapGetChanPeerReg (const CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapChanDir chanDir, uint32_t regIdx, uint32_t *pVal) |
Read a channel peer register. More... | |
int32_t | CSL_udmapSetChanPeerReg (const CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapChanDir chanDir, uint32_t regIdx, uint32_t *pVal) |
Write a TX channel peer register. More... | |
int32_t | CSL_udmapEnableLink (CSL_UdmapCfg *pCfg, uint32_t chanIdx, CSL_UdmapChanDir chanDir) |
Enable a directional data flow for a paired link. More... | |
int32_t | CSL_udmapSetAutoClockGatingEnable (CSL_UdmapCfg *pCfg, CSL_UdmapAutoClkgateBlock blockIds, bool bEnable) |
Enable or disable automatic dynamic clock gating for one or more blocks. More... | |
int32_t | CSL_udmapSetCommandThrottleThreshold (CSL_UdmapCfg *pCfg, CSL_UdmapMasterInterface interfaceId, uint32_t readCountThresh, uint32_t writeCountThresh) |
Set the command throttle threshold for a UDMAP VBUSM master interface. More... | |