![]()  | 
  
    PDK API Guide for J721E
    
   | 
 
UDMA Channel related parameters and API.
Go to the source code of this file.
Data Structures | |
| struct | Udma_ChPrms | 
| UDMA channel open parameters.  More... | |
| struct | Udma_ChTxPrms | 
| UDMA TX channel parameters.  More... | |
| struct | Udma_ChRxPrms | 
| UDMA RX channel parameters.  More... | |
| struct | Udma_ChUtcPrms | 
| UDMA UTC channel parameters.  More... | |
| struct | Udma_ChPdmaPrms | 
| UDMA PDMA channel Static TR parameters.  More... | |
| struct | Udma_ChStats | 
| UDMA channel statistics.  More... | |
| struct | Udma_ChHandle | 
| UDMA channel object.  More... | |
Macros | |
| #define | UDMA_DMA_CH_INVALID ((uint32_t) 0xFFFF0000U) | 
| Macro used to specify that DMA Channel ID is invalid. Used in the API Udma_chOpen.  More... | |
| #define | UDMA_DMA_CH_ANY ((uint32_t) 0xFFFF0001U) | 
| Macro used to specify any available DMA Channel while requesting one. Used in the API Udma_chOpen.  More... | |
| #define | UDMA_DMA_CH_NA ((uint32_t) 0xFFFF0002U) | 
| Macro used to specify that the DMA Channel is not applicable for a particular mode.  More... | |
| #define | UDMA_UTC_ID_INVALID ((uint32_t) 0xFFFF0003U) | 
| Macro used to specify that the UTC ID is invalid.  More... | |
| #define | UDMA_MAPPED_GROUP_INVALID ((uint32_t) 0xFFFF0004U) | 
| Macro used to specify that the Mapped Channel Group is invalid.  More... | |
| #define | UDMA_DMSC_EXTENDED_CH_TYPE_BCDMA_BLK_CPY ((uint8_t) 1U) | 
| DMSC Extended Channel Type Flag for BCDMA Block Copy.  More... | |
| #define | UDMA_DMSC_EXTENDED_CH_TYPE_BCDMA_SPLIT_TR_TX ((uint8_t) 0U) | 
| DMSC Extended Channel Type Flag for BCDMA split TR TX channels.  More... | |
UDMA Channel Flag  | |
| #define | UDMA_CH_FLAG_TX ((uint32_t) 0x0001U) | 
| TX channel flag.  More... | |
| #define | UDMA_CH_FLAG_RX ((uint32_t) 0x0002U) | 
| RX channel flag.  More... | |
| #define | UDMA_CH_FLAG_BLK_COPY ((uint32_t) 0x0004U) | 
| Block copy mode channel flag.  More... | |
| #define | UDMA_CH_FLAG_PDMA ((uint32_t) 0x0008U) | 
| PDMA channel flag.  More... | |
| #define | UDMA_CH_FLAG_PSIL ((uint32_t) 0x0010U) | 
| PSIL channel flag meant for periperals like Ethernet, SA2UL.  More... | |
| #define | UDMA_CH_FLAG_UTC ((uint32_t) 0x0020U) | 
| UTC channel flag.  More... | |
| #define | UDMA_CH_FLAG_HC ((uint32_t) 0x0040U) | 
| High capacity channel flag.  More... | |
| #define | UDMA_CH_FLAG_UHC ((uint32_t) 0x0080U) | 
| Ultra high capacity channel flag.  More... | |
| #define | UDMA_CH_FLAG_MAPPED ((uint32_t) 0x0100U) | 
| Mapped TX/RX channel flag.  More... | |
UDMA Channel Type  | |
| #define | UDMA_CH_TYPE_TR_BLK_COPY | 
| TR block copy type - TX/RX pair.  More... | |
| #define | UDMA_CH_TYPE_TR_BLK_COPY_HC | 
| High capacity TR block copy type - TX/RX pair.  More... | |
| #define | UDMA_CH_TYPE_TR_BLK_COPY_UHC | 
| Ultra high capacity TR block copy type - TX/RX pair.  More... | |
| #define | UDMA_CH_TYPE_TX (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL) | 
| TX channel type.  More... | |
| #define | UDMA_CH_TYPE_TX_HC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_HC) | 
| High capacity TX channel type.  More... | |
| #define | UDMA_CH_TYPE_TX_UHC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_UHC) | 
| Ultra high capacity TX channel type.  More... | |
| #define | UDMA_CH_TYPE_RX (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL) | 
| RX channel type.  More... | |
| #define | UDMA_CH_TYPE_RX_HC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_HC) | 
| High capacity RX channel type.  More... | |
| #define | UDMA_CH_TYPE_RX_UHC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_UHC) | 
| Ultra high capacity RX channel type.  More... | |
| #define | UDMA_CH_TYPE_PDMA_TX (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA) | 
| PDMA TX channel type.  More... | |
| #define | UDMA_CH_TYPE_PDMA_TX_HC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_HC) | 
| High capacity PDMA TX channel type.  More... | |
| #define | UDMA_CH_TYPE_PDMA_TX_UHC (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_UHC) | 
| Ultra high capacity PDMA TX channel type.  More... | |
| #define | UDMA_CH_TYPE_PDMA_RX (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA) | 
| PDMA RX channel type.  More... | |
| #define | UDMA_CH_TYPE_PDMA_RX_HC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_HC) | 
| High capacity PDMA RX channel type.  More... | |
| #define | UDMA_CH_TYPE_PDMA_RX_UHC (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PDMA | UDMA_CH_FLAG_UHC) | 
| Ultra high capacity PDMA RX channel type.  More... | |
| #define | UDMA_CH_TYPE_TX_MAPPED (UDMA_CH_FLAG_TX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_MAPPED) | 
| Mapped TX channel. This could be different type of mapped TX channels. See Udma_MappedTxGrpSoc for differnt types of SOC specific mapped TX channels.  More... | |
| #define | UDMA_CH_TYPE_RX_MAPPED (UDMA_CH_FLAG_RX | UDMA_CH_FLAG_PSIL | UDMA_CH_FLAG_MAPPED) | 
| Mapped RX channel. This could be different type of mapped RX channels. See Udma_MappedRxGrpSoc for differnt types of SOC specific mapped RX channels.  More... | |
| #define | UDMA_CH_TYPE_UTC (UDMA_CH_FLAG_UTC) | 
| UTC channel. This could be.  More... | |
UDMA PDMA element size  | |
| #define | UDMA_PDMA_ES_8BITS ((uint32_t) 0x00U) | 
| 8-bits Element size  More... | |
| #define | UDMA_PDMA_ES_16BITS ((uint32_t) 0x01U) | 
| 16-bits Element size  More... | |
| #define | UDMA_PDMA_ES_24BITS ((uint32_t) 0x02U) | 
| 24-bits Element size  More... | |
| #define | UDMA_PDMA_ES_32BITS ((uint32_t) 0x03U) | 
| 32-bits Element size  More... | |
| #define | UDMA_PDMA_ES_64BITS ((uint32_t) 0x04U) | 
| 64-bits Element size  More... | |
| #define | UDMA_PDMA_ES_DONTCARE ((uint32_t) 0x00U) | 
| Set this for MCAN element size - not applicable.  More... | |
Functions | |
| int32_t | Udma_chOpen (Udma_DrvHandle drvHandle, Udma_ChHandle chHandle, uint32_t chType, const Udma_ChPrms *chPrms) | 
| UDMA open channel.  More... | |
| int32_t | Udma_chClose (Udma_ChHandle chHandle) | 
| UDMA close channel.  More... | |
| int32_t | Udma_chConfigTx (Udma_ChHandle chHandle, const Udma_ChTxPrms *txPrms) | 
| UDMA configure TX channel.  More... | |
| int32_t | Udma_chConfigRx (Udma_ChHandle chHandle, const Udma_ChRxPrms *rxPrms) | 
| UDMA configure RX channel.  More... | |
| int32_t | Udma_chConfigUtc (Udma_ChHandle chHandle, const Udma_ChUtcPrms *utcPrms) | 
| UDMA configure UTC channel.  More... | |
| 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.  More... | |
| int32_t | Udma_chEnable (Udma_ChHandle chHandle) | 
| UDMA channel enable API.  More... | |
| int32_t | Udma_chDisable (Udma_ChHandle chHandle, uint32_t timeout) | 
| UDMA channel teardown and disable API.  More... | |
| int32_t | Udma_chPause (Udma_ChHandle chHandle) | 
| UDMA channel pause API.  More... | |
| int32_t | Udma_chResume (Udma_ChHandle chHandle) | 
| UDMA channel resume API.  More... | |
| uint32_t | Udma_chGetNum (Udma_ChHandle chHandle) | 
| Returns the channel number offset with in a channel type - TX, RX and External (UTC) channel types.  More... | |
| Udma_RingHandle | Udma_chGetFqRingHandle (Udma_ChHandle chHandle) | 
| Returns the default free ring handle of the channel.  More... | |
| Udma_RingHandle | Udma_chGetCqRingHandle (Udma_ChHandle chHandle) | 
| Returns the default completion ring handle of the channel.  More... | |
| Udma_RingHandle | Udma_chGetTdCqRingHandle (Udma_ChHandle chHandle) | 
| Returns the teardown completion ring handle of the channel.  More... | |
| uint16_t | Udma_chGetFqRingNum (Udma_ChHandle chHandle) | 
| Returns the default free ring number to be programmed in descriptor.  More... | |
| uint16_t | Udma_chGetCqRingNum (Udma_ChHandle chHandle) | 
| Returns the default completion ring number to be programmed in descriptor.  More... | |
| Udma_FlowHandle | Udma_chGetDefaultFlowHandle (Udma_ChHandle chHandle) | 
| Returns the default flow handle of the RX channel.  More... | |
| int32_t | Udma_chDequeueTdResponse (Udma_ChHandle chHandle, CSL_UdmapTdResponse *tdResponse) | 
| UDMA dequeue response from teardown completion ring.  More... | |
| uint32_t | Udma_chGetTriggerEvent (Udma_ChHandle chHandle, uint32_t trigger) | 
| Returns the global trigger event for the channel.  More... | |
| void * | Udma_chGetSwTriggerRegister (Udma_ChHandle chHandle) | 
| Returns the software trigger register address for the channel.  More... | |
| int32_t | Udma_chSetSwTrigger (Udma_ChHandle chHandle, uint32_t trigger) | 
| Sets the software trigger register based on the trigger mode provided.  More... | |
| int32_t | Udma_chSetChaining (Udma_ChHandle triggerChHandle, Udma_ChHandle chainedChHandle, uint32_t trigger) | 
| Chains the trigger channel with the chained channel.  More... | |
| int32_t | Udma_chBreakChaining (Udma_ChHandle triggerChHandle, Udma_ChHandle chainedChHandle) | 
| Breaks the chaining by resetting the trigger channel's OES.  More... | |
| void | UdmaChPrms_init (Udma_ChPrms *chPrms, uint32_t chType) | 
| Udma_ChPrms structure init function.  More... | |
| void | UdmaChTxPrms_init (Udma_ChTxPrms *txPrms, uint32_t chType) | 
| Udma_ChTxPrms structure init function.  More... | |
| void | UdmaChRxPrms_init (Udma_ChRxPrms *rxPrms, uint32_t chType) | 
| Udma_ChRxPrms structure init function.  More... | |
| void | UdmaChUtcPrms_init (Udma_ChUtcPrms *utcPrms) | 
| Udma_ChUtcPrms structure init function.  More... | |
| void | UdmaChPdmaPrms_init (Udma_ChPdmaPrms *pdmaPrms) | 
| Udma_ChPdmaPrms structure init function.  More... | |
| int32_t | Udma_chGetStats (Udma_ChHandle chHandle, Udma_ChStats *chStats) | 
| Get real-time channel statistics.  More... | |