![]()  | 
  
    PDK API Guide for J721E
    
   | 
 
UDMA ring related parameters and API.
Go to the source code of this file.
Data Structures | |
| struct | Udma_RingPrms | 
| UDMA ring parameters.  More... | |
| struct | Udma_RingMonPrms | 
| UDMA ring monitor parameters.  More... | |
| struct | Udma_RingMonData | 
| UDMA ring monitor data.  More... | |
| struct | Udma_RingHandle | 
| UDMA ring object.  More... | |
| struct | Udma_RingMonHandle | 
| UDMA ring monitor object.  More... | |
Macros | |
| #define | UDMA_RING_INVALID ((uint16_t) TISCI_MSG_VALUE_RM_NULL_RING_TYPE) | 
| Macro used to specify that ring ID is invalid. Used in the API Udma_ringGetNum.  More... | |
| #define | UDMA_RING_ANY ((uint16_t) 0xFFFEU) | 
| Macro used to specify any available free ring while requesting one. Used in the API Udma_ringAlloc.  More... | |
| #define | UDMA_RING_MON_INVALID (UDMA_RING_INVALID) | 
| Macro used to specify that ring monitor ID is invalid. Used in the API Udma_ringMonGetNum.  More... | |
| #define | UDMA_RING_MON_ANY (UDMA_RING_ANY) | 
| Macro used to specify any available ring monitor while requesting one. Used in the API Udma_ringMonAlloc.  More... | |
| #define | UDMA_RING_VIRTID_INVALID ((uint16_t) 0xFFFFU) | 
| Macro used to specify that ring virt ID is invalid. Used in the API Udma_ringAlloc.  More... | |
| #define | UDMA_RING_SIZE_CHECK_SKIP (0xABDCABCDU) | 
| Macro used to skip the ring size check by driver.  More... | |
| #define | UDMA_RING_ORDERID_MAX (0x0FU) | 
| Macro used to specificy the maximum ring order id value.  More... | |
UDMA Ring element size  | |
| #define | UDMA_RING_ES_4BYTES ((uint8_t) 0x00U) | 
| 4 bytes Element size  More... | |
| #define | UDMA_RING_ES_8BYTES ((uint8_t) 0x01U) | 
| 8 bytes Element size  More... | |
| #define | UDMA_RING_ES_16BYTES ((uint8_t) 0x02U) | 
| 16 bytes Element size  More... | |
| #define | UDMA_RING_ES_32BYTES ((uint8_t) 0x03U) | 
| 32 bytes Element size  More... | |
| #define | UDMA_RING_ES_64BYTES ((uint8_t) 0x04U) | 
| 64 bytes Element size  More... | |
| #define | UDMA_RING_ES_128BYTES ((uint8_t) 0x05U) | 
| 128 bytes Element size  More... | |
| #define | UDMA_RING_ES_256BYTES ((uint8_t) 0x06U) | 
| 256 bytes Element size  More... | |
Functions | |
| int32_t | Udma_ringAlloc (Udma_DrvHandle drvHandle, Udma_RingHandle ringHandle, uint16_t ringNum, const Udma_RingPrms *ringPrms) | 
| UDMA ring allocation and configuration API.  More... | |
| int32_t | Udma_ringFree (Udma_RingHandle ringHandle) | 
| UDMA free ring.  More... | |
| int32_t | Udma_ringAttach (Udma_DrvHandle drvHandle, Udma_RingHandle ringHandle, uint16_t ringNum) | 
| UDMA ring attach API. This API is used to attach to an already allocated and configured ring. This API differs from ring alloc API in this aspect - it doesn't allocate resource from RM and doesn't configure the ring through sciclient/DMSC API.  More... | |
| int32_t | Udma_ringDetach (Udma_RingHandle ringHandle) | 
| UDMA detach ring API.  More... | |
| int32_t | Udma_ringQueueRaw (Udma_RingHandle ringHandle, uint64_t phyDescMem) | 
| UDMA queue descriptor to a ring - raw version (Takes all physical pointers)  More... | |
| int32_t | Udma_ringDequeueRaw (Udma_RingHandle ringHandle, uint64_t *phyDescMem) | 
| UDMA dequeue descriptor from a ring - raw version (Takes all physical pointers).  More... | |
| int32_t | Udma_ringFlushRaw (Udma_RingHandle ringHandle, uint64_t *phyDescMem) | 
| UDMA dequeue descriptor from a ring when UDMA channel is disabled - raw version (Takes all physical pointers).  More... | |
| void | Udma_ringPrime (Udma_RingHandle ringHandle, uint64_t phyDescMem) | 
| UDMA prime descriptor to a exposed/"RING" mode ring - raw version (Takes all physical pointers). This will write the descriptor to the ring memory without setting the doorbell (doesn't commit the push).  More... | |
| void | Udma_ringPrimeRead (Udma_RingHandle ringHandle, uint64_t *phyDescMem) | 
| UDMA read descriptor from a exposed/"RING" mode ring - raw version (Reads physical pointers). This will read the descriptor address from the ring memory without setting the doorbell (doesn't commit the pop).  More... | |
| void | Udma_ringSetDoorBell (Udma_RingHandle ringHandle, int32_t count) | 
| UDMA ring API to set the doorbell in exposed/"RING" mode ring. This will commit the previously primed operation using Udma_ringPrime API.  More... | |
| uint16_t | Udma_ringGetNum (Udma_RingHandle ringHandle) | 
| Returns the ring number allocated for this ring.  More... | |
| void * | Udma_ringGetMemPtr (Udma_RingHandle ringHandle) | 
| Returns the ring memory pointer which is passed during ring alloc.  More... | |
| uint32_t | Udma_ringGetMode (Udma_RingHandle ringHandle) | 
| Returns the ring mode which is configured during ring alloc.  More... | |
| uint32_t | Udma_ringGetElementCnt (Udma_RingHandle ringHandle) | 
| Returns the ring element count which is passed during ring alloc.  More... | |
| uint32_t | Udma_ringGetForwardRingOcc (Udma_RingHandle ringHandle) | 
| Returns the forward ring occupancy.  More... | |
| uint32_t | Udma_ringGetReverseRingOcc (Udma_RingHandle ringHandle) | 
| Returns the reverse ring occupancy.  More... | |
| uint32_t | Udma_ringGetWrIdx (Udma_RingHandle ringHandle) | 
| Returns the ring write index value.  More... | |
| uint32_t | Udma_ringGetRdIdx (Udma_RingHandle ringHandle) | 
| Returns the ring read index value.  More... | |
| int32_t | Udma_ringMonAlloc (Udma_DrvHandle drvHandle, Udma_RingMonHandle monHandle, uint16_t ringMonNum) | 
| UDMA ring monitor allocation API.  More... | |
| int32_t | Udma_ringMonFree (Udma_RingMonHandle monHandle) | 
| UDMA free ring monitor.  More... | |
| int32_t | Udma_ringMonConfig (Udma_RingMonHandle monHandle, const Udma_RingMonPrms *monPrms) | 
| UDMA ring monitor configure API.  More... | |
| int32_t | Udma_ringMonGetData (Udma_RingMonHandle monHandle, Udma_RingMonData *monData) | 
| UDMA ring monitor get data API.  More... | |
| uint16_t | Udma_ringMonGetNum (Udma_RingMonHandle monHandle) | 
| Returns the ring monitor number.  More... | |
| void | UdmaRingPrms_init (Udma_RingPrms *ringPrms) | 
| Udma_RingPrms structure init function.  More... | |
| void | UdmaRingMonPrms_init (Udma_RingMonPrms *monPrms) | 
| Udma_RingMonPrms structure init function.  More... | |