PDK API Guide for AM64x
RINGACC Enumerated Data Types

Introduction

===========================================================================

Macros

#define CSL_LCDMA_RINGACC_RING_EL_SIZE_BYTES   ((uint32_t) 8U)
 
#define CSL_LCDMA_RINGACC_MAX_RINGS   (1024U)
 
#define CSL_LCDMA_RINGACC_MAX_MONITOR_INTRS   (0U)
 
#define CSL_LCDMA_RINGACC_CRED_PASSTHRU   (0xFFFFFFFFU)
 
#define CSL_LCDMA_RINGACC_ORDERID_BYPASS   (0xFFFFFFFFU)
 
#define CSL_LCDMA_RINGACC_RING_EVENT_DISABLE   (0xFFFFU)
 
#define CSL_lcdma_ringaccMakeDescAddr   CSL_lcdma_ringaccSetAselInAddr
 

Ringacc ring mode

This enumerator defines the possible modes for a ring or queue


typedef uint32_t CSL_LcdmaRingaccRingMode
 
#define CSL_LCDMA_RINGACC_RING_MODE_TX_RING   ((uint32_t) 1U)
 
#define CSL_LCDMA_RINGACC_RING_MODE_RX_RING   ((uint32_t) 9U)
 
#define CSL_LCDMA_RINGACC_RING_MODE_INVALID   ((uint32_t) 10U)
 

Ringacc monitor data source

[ringacc_only] This enumerator defines the possible data sources that can be monitored


typedef uint32_t CSL_LcdmaRingAccMonitorDataSrc
 
#define CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_ELEMENT_CNT   ((uint32_t) 0U)
 
#define CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_HEAD_PKT_SIZE   ((uint32_t) 1U)
 
#define CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_ACCUM_QUEUE_SIZE   ((uint32_t) 2U)
 
#define CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_INVALID   ((uint32_t) 3U)
 

Ringacc monitor type

[ringacc_only] This enumerator defines the possible monitor types


typedef uint32_t CSL_LcdmaRingAccMonitorType
 
#define CSL_LCDMA_RINGACC_MONITOR_TYPE_DISABLED   ((uint32_t) 0U)
 
#define CSL_LCDMA_RINGACC_MONITOR_TYPE_STATS   ((uint32_t) 1U)
 
#define CSL_LCDMA_RINGACC_MONITOR_TYPE_THRESHOLD   ((uint32_t) 2U)
 
#define CSL_LCDMA_RINGACC_MONITOR_TYPE_WATERMARK   ((uint32_t) 3U)
 
#define CSL_LCDMA_RINGACC_MONITOR_TYPE_STARVATION   ((uint32_t) 4U)
 
#define CSL_LCDMA_RINGACC_MONITOR_TYPE_INVALID   ((uint32_t) 5U)
 

Ringacc Ops type

This enumerator defines the possible memory operation types


typedef uint32_t CSL_LcdmaRingAccMemoryOpsType
 
#define CSL_LCDMA_RINGACC_MEM_OPS_TYPE_WR   ((uint32_t) 0U)
 
#define CSL_LCDMA_RINGACC_MEM_OPS_TYPE_RD   ((uint32_t) 1U)
 

Ringacc address select (asel) endpoint

This enumerator defines the valid address select (asel) endpoints


typedef uint32_t CSL_LcdmaRingAccAselEndpoint
 
#define CSL_LCDMA_RINGACC_ASEL_ENDPOINT_PHYSADDR   ((uint32_t) 0U)
 

Macro Definition Documentation

◆ CSL_LCDMA_RINGACC_RING_EL_SIZE_BYTES

#define CSL_LCDMA_RINGACC_RING_EL_SIZE_BYTES   ((uint32_t) 8U)

◆ CSL_LCDMA_RINGACC_MAX_RINGS

#define CSL_LCDMA_RINGACC_MAX_RINGS   (1024U)

Maximum number of rings across devices

◆ CSL_LCDMA_RINGACC_MAX_MONITOR_INTRS

#define CSL_LCDMA_RINGACC_MAX_MONITOR_INTRS   (0U)

Maximum number of monitors across devices Maximum number of monitor interrupts across devices

◆ CSL_LCDMA_RINGACC_CRED_PASSTHRU

#define CSL_LCDMA_RINGACC_CRED_PASSTHRU   (0xFFFFFFFFU)

Bypass credential setting

◆ CSL_LCDMA_RINGACC_ORDERID_BYPASS

#define CSL_LCDMA_RINGACC_ORDERID_BYPASS   (0xFFFFFFFFU)

Bypass order ID setting

◆ CSL_LCDMA_RINGACC_RING_EVENT_DISABLE

#define CSL_LCDMA_RINGACC_RING_EVENT_DISABLE   (0xFFFFU)

Macro to pass to disable event

◆ CSL_lcdma_ringaccMakeDescAddr

#define CSL_lcdma_ringaccMakeDescAddr   CSL_lcdma_ringaccSetAselInAddr

◆ CSL_LCDMA_RINGACC_RING_MODE_TX_RING

#define CSL_LCDMA_RINGACC_RING_MODE_TX_RING   ((uint32_t) 1U)

Exposed transmit ring mode with dual queues (forward/reverse) for SW direct access

◆ CSL_LCDMA_RINGACC_RING_MODE_RX_RING

#define CSL_LCDMA_RINGACC_RING_MODE_RX_RING   ((uint32_t) 9U)

Exposed receive ring mode with dual queues (forward/reverse) for SW direct access

◆ CSL_LCDMA_RINGACC_RING_MODE_INVALID

#define CSL_LCDMA_RINGACC_RING_MODE_INVALID   ((uint32_t) 10U)

Invalid

◆ CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_ELEMENT_CNT

#define CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_ELEMENT_CNT   ((uint32_t) 0U)

Monitor the queue element count

◆ CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_HEAD_PKT_SIZE

#define CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_HEAD_PKT_SIZE   ((uint32_t) 1U)

Monitor the packet size at the head of a queue

◆ CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_ACCUM_QUEUE_SIZE

#define CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_ACCUM_QUEUE_SIZE   ((uint32_t) 2U)

Monitor the accumulated data (in bytes) in a queue

◆ CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_INVALID

#define CSL_LCDMA_RINGACC_MONITOR_DATA_SRC_INVALID   ((uint32_t) 3U)

Invalid

◆ CSL_LCDMA_RINGACC_MONITOR_TYPE_DISABLED

#define CSL_LCDMA_RINGACC_MONITOR_TYPE_DISABLED   ((uint32_t) 0U)

Monitor is disabled

◆ CSL_LCDMA_RINGACC_MONITOR_TYPE_STATS

#define CSL_LCDMA_RINGACC_MONITOR_TYPE_STATS   ((uint32_t) 1U)

Monitor tracks simple statistics on the queue operations. The first value is the count of the number of writes to the queue, and the second value is the count of the number of reads from the queue.

◆ CSL_LCDMA_RINGACC_MONITOR_TYPE_THRESHOLD

#define CSL_LCDMA_RINGACC_MONITOR_TYPE_THRESHOLD   ((uint32_t) 2U)

Monitor uses a programmed low threshold value and a programmed high threshold value to track the data source in the queue and cause an interrupt or status when a threshold is broken, either below the low value or above the high value

◆ CSL_LCDMA_RINGACC_MONITOR_TYPE_WATERMARK

#define CSL_LCDMA_RINGACC_MONITOR_TYPE_WATERMARK   ((uint32_t) 3U)

Monitor tracks the low and high values of the data source since the last read of the monitor

◆ CSL_LCDMA_RINGACC_MONITOR_TYPE_STARVATION

#define CSL_LCDMA_RINGACC_MONITOR_TYPE_STARVATION   ((uint32_t) 4U)

Monitor tracks the number of starvation events (a read to an empty queue) that occurred on the queue

◆ CSL_LCDMA_RINGACC_MONITOR_TYPE_INVALID

#define CSL_LCDMA_RINGACC_MONITOR_TYPE_INVALID   ((uint32_t) 5U)

Invalid

◆ CSL_LCDMA_RINGACC_MEM_OPS_TYPE_WR

#define CSL_LCDMA_RINGACC_MEM_OPS_TYPE_WR   ((uint32_t) 0U)

Write operation

◆ CSL_LCDMA_RINGACC_MEM_OPS_TYPE_RD

#define CSL_LCDMA_RINGACC_MEM_OPS_TYPE_RD   ((uint32_t) 1U)

Read operation

◆ CSL_LCDMA_RINGACC_ASEL_ENDPOINT_PHYSADDR

#define CSL_LCDMA_RINGACC_ASEL_ENDPOINT_PHYSADDR   ((uint32_t) 0U)

Physical address (normal)

Typedef Documentation

◆ CSL_LcdmaRingaccRingMode

typedef uint32_t CSL_LcdmaRingaccRingMode

◆ CSL_LcdmaRingAccMonitorDataSrc

◆ CSL_LcdmaRingAccMonitorType

typedef uint32_t CSL_LcdmaRingAccMonitorType

◆ CSL_LcdmaRingAccMemoryOpsType

◆ CSL_LcdmaRingAccAselEndpoint

typedef uint32_t CSL_LcdmaRingAccAselEndpoint