PDK API Guide for J721E
UDMAP Functions

Introduction

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...
 

Function Documentation

uint32_t CSL_udmapGetRevision ( const CSL_UdmapCfg pCfg)

Return revision of the UDMAP module.

This function returns the contents of the UDMAP revision register. Consult the UDMAP module documentation for a description of the contents of the revision register.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
Returns
The 32-bit revision register is returned.
int32_t CSL_udmapGetRevisionInfo ( const CSL_UdmapCfg pCfg,
CSL_UdmapRevision pRev 
)

Return revision information of the UDMAP module.

This function returns revision information for the UDMAP module.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
pRev[OUT] Pointer to a CSL_UdmapRevision structure where the revision information is returned
Returns
0 if successful, or -1 on error
void CSL_udmapGetCfg ( CSL_UdmapCfg pCfg)

Return UDMAP configuration information.

This function returns configuration and capability information for the UDMAP module. See the CSL_UdmapCfg structure for details on the information that is returned.

Parameters
pCfg[IN/OUT] Pointer to the UDMAP configuration structure
Returns
None
void CSL_udmapInitTxChanCfg ( CSL_UdmapTxChanCfg pTxChanCfg)

Initialize a CSL_UdmapTxChanCfg structure.

This function initializes the specified CSL_UdmapTxChanCfg structure to known, safe values. Software then only needs to configure elements that are different than their initialized values prior to calling the CSL_udmapTxChanCfg function.

All elements of the CSL_UdmapTxChanCfg structure are initialized to zero except for the following:

chanType        = CSL_UDMAP_CHAN_TYPE_REF_PKT_RING;
fetchWordSize   = CSL_UDMAP_FETCH_WORD_SIZE_16;
trEventNum      = CSL_UDMAP_NO_EVENT;
errEventNum     = CSL_UDMAP_NO_EVENT;
Parameters
pTxChanCfg[OUT] Pointer to a CSL_UdmapTxChanCfg structure
Returns
None
void CSL_udmapInitRxChanCfg ( CSL_UdmapRxChanCfg pRxChanCfg)

Initialize a CSL_UdmapRxChanCfg structure.

This function initializes the specified CSL_UdmapRxChanCfg structure to known, safe values. Software then only needs to configure elements that are different than their initialized values prior to calling the CSL_udmapRxChanCfg function.

All elements of the CSL_UdmapRxChanCfg structure are initialized to zero except for the following:

chanType            = CSL_UDMAP_CHAN_TYPE_REF_PKT_RING;
fetchWordSize       = CSL_UDMAP_FETCH_WORD_SIZE_16;
trEventNum          = CSL_UDMAP_NO_EVENT;
errEventNum         = CSL_UDMAP_NO_EVENT;
flowIdFwRangeCnt    = CSL_UDMAP_RXCCFG_CHAN_RFLOW_RNG_FLOWID_CNT_RESETVAL;
Parameters
pRxChanCfg[OUT] Pointer to a CSL_UdmapRxChanCfg structure
Returns
None
void CSL_udmapInitRxFlowCfg ( CSL_UdmapRxFlowCfg pFlow)

Initialize a CSL_UdmapRxFlowCfg structure.

This function initializes the specified CSL_UdmapRxFlowCfg structure to known, safe values. Software then only needs to configure elements that are different than their initialized values prior to calling the CSL_udmapRxFlowCfg function.

All elements of the CSL_UdmapRxFlowCfg structure are initialized to zero.

Parameters
pFlow[OUT] Pointer to a CSL_UdmapRxFlowCfg structure
Returns
None
void CSL_udmapSetPerfCtrl ( CSL_UdmapCfg pCfg,
uint32_t  rxRetryTimeoutCnt 
)

Set performance control parmeters.

This function is used to set performance control paramaters available in the UDMAP module.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
rxRetryTimeoutCnt[IN] This parameter specifies the minimum amount of time (in clock cycles) that an Rx channel will be required to wait when it encounters a buffer starvation condition and the Rx error handling bit is set to 1
Returns
None
void CSL_udmapSetUtcCtrl ( CSL_UdmapCfg pCfg,
uint32_t  startingThreadNum 
)

Set UTC control parmeters.

This function is used to set UTC control paramaters available in the UDMAP module.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
startingThreadNum[IN] This parameter specifies the starting PSI-L thread number for the external UTC
Returns
None
int32_t CSL_udmapRxFlowCfg ( CSL_UdmapCfg pCfg,
uint32_t  flow,
const CSL_UdmapRxFlowCfg pFlow 
)

Configure an RX flow.

This function initializes a receive flow with values specified in the CSL_UdmapRxFlowCfg structure.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
flow[IN] Index of the receive flow to initialize
pFlow[IN] Pointer to a CSL_UdmapRxFlowCfg structure containing initialization values
Returns
0 if successful, or -1 on error
int32_t CSL_udmapRxChanCfg ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
const CSL_UdmapRxChanCfg pRxChanCfg 
)

Configure an RX channel.

This function initializes a receive channel with values specified in the CSL_UdmapRxChanCfg structure.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the receive channel to initialize
pRxChanCfg[IN] Pointer to a CSL_UdmapRxChanCfg structure containing initialization values
Returns
0 if successful, or -1 on error
int32_t CSL_udmapTxChanCfg ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
const CSL_UdmapTxChanCfg pTxChanCfg 
)

Configure a TX channel.

This function initializes a transmit channel with values specified in the CSL_UdmapTxChanCfg structure.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the transmit channel to initialize
pTxChanCfg[IN] Pointer to a CSL_UdmapTxChanCfg structure containing initialization values
Returns
0 if successful, or -1 on error
int32_t CSL_udmapRxChanSetTrEvent ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
uint32_t  trEventNum 
)

Configure an RX channel TR event.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the receive channel to initialize
trEventNum[IN] Specifies a global event number to generate anytime the required event generation criteria specified in a TR are met Set to CSL_UDMAP_NO_EVENT for no event generation.
Returns
0 if successful, or -1 on error
int32_t CSL_udmapTxChanSetTrEvent ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
uint32_t  trEventNum 
)

Configure an TX channel TR event.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the transmit channel to initialize
trEventNum[IN] Specifies a global event number to generate anytime the required event generation criteria specified in a TR are met Set to CSL_UDMAP_NO_EVENT for no event generation.
Returns
0 if successful, or -1 on error
int32_t CSL_udmapRxChanSetBurstSize ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
CSL_UdmapChanBurstSize  burstSize 
)

Configure RX channel burst size.

This function enables configuration of the nominal burst size and alignment for data transfers on the specified RX channel. The default burst size is 64 bytes (a value of CSL_UDMAP_CHAN_BURST_SIZE_64_BYTES).

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the receive channel to initialize
burstSize[IN] Burst size value. See CSL_UdmapChanBurstSize for a list of valid burst size values.
Returns
0 if successful, or -1 if burstSize is invalid or this function is not available in the version of UDMAP being used
int32_t CSL_udmapTxChanSetBurstSize ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
CSL_UdmapChanBurstSize  burstSize 
)

Configure TX channel burst size.

This function enables configuration of the nominal burst size and alignment for data transfers on the specified TX channel. The default burst size is 64 bytes (a value of CSL_UDMAP_CHAN_BURST_SIZE_64_BYTES).

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the transmit channel to initialize
burstSize[IN] Burst size value. See CSL_UdmapChanBurstSize for a list of valid burst size values.
Returns
0 if successful, or -1 if burstSize is invalid or this function is not available in the version of UDMAP being used
int32_t CSL_udmapGetRxRT ( const CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
CSL_UdmapRT pRT 
)

Get an RX channel's real-time register values.

This function returns the real-time register values for the specified receive channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the receive channel
pRT[OUT] Pointer to a CSL_UdmapRT structure where values are returned
Returns
0 if successful, or -1 on error
int32_t CSL_udmapGetTxRT ( const CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
CSL_UdmapRT pRT 
)

Get a TX channel's real-time register values.

This function returns the real-time register values for the specified transmit channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the transmit channel
pRT[OUT] Pointer to a CSL_UdmapRT structure where values are returned
Returns
0 if successful, or -1 on error
int32_t CSL_udmapSetRxRT ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
const CSL_UdmapRT pRT 
)

Set an RX channel's real-time register values.

This function sets the real-time register values for the specified receive channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the receive channel
pRT[IN] Pointer to a CSL_UdmapRT structure containing initialization values
Returns
0 if successful, or -1 on error
int32_t CSL_udmapSetTxRT ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
const CSL_UdmapRT pRT 
)

Set a TX channel's real-time register values.

This function sets the real-time register values for the specified transmit channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the transmit channel
pRT[IN] Pointer to a CSL_UdmapRT structure containing initialization values
Returns
0 if successful, or -1 on error
int32_t CSL_udmapEnableTxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Enable a transmit channel.

This function enables the transmit channel specified by 'chanIdx'.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the transmit channel
Returns
0 if successful, or -1 on error
int32_t CSL_udmapDisableTxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Disable a transmit channel.

This function disables the transmit channel specified by 'chanIdx'.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the transmit channel
Returns
0 if successful, or -1 on error
int32_t CSL_udmapTeardownTxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
bool  bForce,
bool  bWait 
)

Teardown a transmit channel.

This function tears down the transmit channel specified by 'chanIdx' at the next packet boundary.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the transmit channel
bForce[IN] If true, the channel is torn down without attempting to preserve data or wait for events (flushes the channel). If false, any packets in flight are completed prior to the channel being torn down.
bWait[IN] If true, wait for the teardown operation to complete. Otherwise, return immediately.
Returns
0 = Success, -1 = Operation prohibited (channel is disabled)
int32_t CSL_udmapPauseTxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Pause a transmit channel.

This function pauses the transmit channel specified by 'chanIdx' at the next packet boundary. This is a more graceful method of halting processing than disabling the channel as it will not allow any current packets to underflow.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the transmit channel
Returns
0 = Success, -1 = Operation prohibited (channel is disabled)
int32_t CSL_udmapUnpauseTxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Un-pause a transmit channel.

This function un-pauses the transmit channel specified by 'chanIdx'.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the transmit channel
Returns
0 = Success, -1 = Operation prohibited (channel is disabled)
int32_t CSL_udmapTriggerTxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Send a trigger event to a TX channel.

This function causes a trigger event to be sent to the specified transmit channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the transmit channel
Returns
0 if successful, or -1 on error
void CSL_udmapClearTxChanError ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Clear error indication in a transmit channel.

This function clears the error indication in the specified transmit channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the transmit channel
Returns
None
int32_t CSL_udmapEnableRxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Enable a receive channel.

This function enables the receive channel specified by 'chanIdx'.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the receive channel
Returns
0 if successful, or -1 on error
int32_t CSL_udmapDisableRxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Disable a receive channel.

This function disables the receive channel specified by 'chanIdx'.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the receive channel
Returns
0 if successful, or -1 on error
int32_t CSL_udmapTeardownRxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
bool  bForce,
bool  bWait 
)

Teardown a receive channel.

This function tears down the receive channel specified by 'chanIdx' at the next packet boundary.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the receive channel
bForce[IN] If true, the channel is torn down without attempting to preserve data or wait for events (flushes the channel). If false, any packets in flight are completed prior to the channel being torn down.
bWait[IN] If true, wait for the teardown operation to complete. Otherwise, return immediately.
Returns
0 = Success, -1 = Operation prohibited (channel is disabled)
int32_t CSL_udmapPauseRxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Pause a receive channel.

This function pauses the receive channel specified by 'chanIdx' at the next packet boundary. This is a more graceful method of halting processing than disabling the channel as it will not allow any current packets to underflow.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the receive channel
Returns
0 = Success, -1 = Operation prohibited (channel is disabled)
int32_t CSL_udmapUnpauseRxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Un-pause a receive channel.

This function un-pauses the receive channel specified by 'chanIdx'.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the transmit channel
Returns
0 = Success, -1 = Operation prohibited (channel is disabled)
int32_t CSL_udmapTriggerRxChan ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Send a trigger event to an RX channel.

This function causes a trigger event to be sent to the specified receive channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the receive channel
Returns
0 if successful, or -1 on error
void CSL_udmapClearRxChanError ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx 
)

Clear error indication in a receive channel.

This function clears the error indication in the specified receive channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] The index of the receive channel
Returns
None
void CSL_udmapCfgRxFlowIdFirewall ( CSL_UdmapCfg pCfg,
uint32_t  outEvtNum 
)

Configure the receive flow ID range firewall.

This function is used to configure the receive flow ID range firewall.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
outEvtNum[IN] Output event number to use when the receive flow ID range firewall detects an error
Returns
None
bool CSL_udmapGetRxFlowIdFirewallStatus ( CSL_UdmapCfg pCfg,
CSL_UdmapRxFlowIdFirewallStatus pRxFlowIdFwStatus 
)

Get receive flow ID range firewall status information.

This function returns information from the receive flow ID range firewall.

If the receive flow ID firewall has detected an out of range flow ID, the function returns true and the fields within the CSL_UdmapRxFlowIdFirewallStatus structure contain error details. The function will automatically reset the receive flow ID firewall to capture the next error.

If the receive flow ID firewall has not detected an out of range flow ID, the function returns false and the fields within the CSL_UdmapRxFlowIdFirewallStatus structure are not updated.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
pRxFlowIdFwStatus[IN] Pointer to a CSL_UdmapRxFlowIdFirewallStatus structure containing error details (valid only when true is returned)
Returns
true if the receive flow ID range firewall has detected an out of range flow ID, false if no error was detected
void CSL_udmapGetChanStats ( const CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
CSL_UdmapChanDir  chanDir,
CSL_UdmapChanStats pChanStats 
)

Get channel statistics.

This function is used to read statistics for a transmit or receive channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the channel
chanDir[IN] Channel direction (see CSL_UdmapChanDir)
pChanStats[OUT] Pointer to a CSL_UdmapChanStats structure where the statistics are returned
Returns
None
void CSL_udmapDecChanStats ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
CSL_UdmapChanDir  chanDir,
const CSL_UdmapChanStats pChanStats 
)

Decrement channel statistics.

This function is used to decrement statistics for a transmit or receive channel by the counts contained in the specified CSL_UdmapChanStats structure.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the channel
chanDir[IN] Channel direction (see CSL_UdmapChanDir)
pChanStats[IN] Pointer to a CSL_UdmapChanStats structure containing the counts to decrement each statistic by
Returns
None
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.

This function is used to read the value from a peer register for the specified channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the channel
chanDir[IN] Channel direction (see CSL_UdmapChanDir)
regIdx[IN] Peer register index (0..15)
pVal[OUT] Pointer where the register value is returned
Returns
0 if successful, or -1 if regIdx is out of range
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.

This function is used to write a value to a peer register for the specified transmit channel.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the transmit channel
chanDir[IN] Channel direction (see CSL_UdmapChanDir)
regIdx[IN] Peer register index (0..15)
pVal[IN] Pointer to the register value to be written
Returns
0 if successful, or -1 if regIdx is out of range
int32_t CSL_udmapEnableLink ( CSL_UdmapCfg pCfg,
uint32_t  chanIdx,
CSL_UdmapChanDir  chanDir 
)

Enable a directional data flow for a paired link.

This function is used to enable a directional data flow for a given UDMAP channel between UDMAP and a paired PSIL peer.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
chanIdx[IN] Index of the UDMAP channel (TX or RX)
chanDir[IN] Channel direction (TX or RX, see CSL_UdmapChanDir)
Returns
0 if successful, or -1 if chanIdx is invalid
int32_t CSL_udmapSetAutoClockGatingEnable ( CSL_UdmapCfg pCfg,
CSL_UdmapAutoClkgateBlock  blockIds,
bool  bEnable 
)

Enable or disable automatic dynamic clock gating for one or more blocks.

This function is used to enable or disable automatic dynamic clock gating for one or more internal sub-blocks within the UDMAP.

UDMAP revision 2.2.0.0 and later provides automatic dynamic clock gating support for internal sub-blocks based on real-time monitoring of activity.

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
blockIds[IN] One or more block ID's created by logically or'ing one or more ID's defined in CSL_UdmapAutoClkgateBlock
bEnable[IN] If true, automatic dynamic clock gating for the specified blocks is enabled. Otherwise, it is disabled.
Returns
0 if successful, or -1 if this feature is not available
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.

This function is used to set the read and/or write command throttle threshold for a UDMAP VBUSM master interface. Command dispatching will be disabled for virtualized channels whenver the current virtualized read or write count from this interface meets or exceeds the programmed value.

Note that this feature is only available in UDMAP revision 2.1.32.0 and later.

The following table shows if read and/or write thresholds can be set for each available interface:

                                  Read  Write
                                  ----  -----

CSL_UDMAP_MASTER_INTERFACE_PKTDMA_0 X X CSL_UDMAP_MASTER_INTERFACE_PKTDMA_1 X X CSL_UDMAP_MASTER_INTERFACE_UTC_READ X CSL_UDMAP_MASTER_INTERFACE_UTC_WRITE X

Parameters
pCfg[IN] Pointer to the UDMAP configuration structure
interfaceId[IN] Interface ID. See CSL_UdmapMasterInterface
readCountThresh[IN] Read command threshold value. Must be > 0.
writeCountThresh[IN] Write command threshold value. Must be > 0.
Returns
0 if successful -1 if this feature is not available -2 interfaceId, readCountThresh, and/or writeCountThresh are invalid