![]() |
![]() |
#define QCMD_RETCODE_SUCCESS 1 |
QMSS QoS return and Error Codes QMSS QoS successful return code
#define QMSS_ACC_CHANNEL_ALREADY_ACTIVE 5 |
QMSS accumulator channel already active
#define QMSS_ACC_CHANNEL_NOT_ACTIVE 4 |
QMSS accumulator channel not active return code
#define QMSS_ACC_IDLE 0 |
QMSS accumulator return and Error Codes QMSS accumulator idle return code
#define QMSS_ACC_INVALID_CHANNEL 3 |
QMSS accumulator invalid channel return code
#define QMSS_ACC_INVALID_COMMAND 2 |
QMSS accumulator invalid command return code
#define QMSS_ACC_INVALID_QUEUE_NUMBER 6 |
QMSS accumulator invalid queue number
#define QMSS_ACC_SOK 1 |
QMSS accumulator successful return code
#define QMSS_DESC_PTR | ( | desc | ) | ((uint32_t)desc & 0xFFFFFFF0) |
Macro to get the descriptor pointer if the popped descriptor contains the descriptor size. If Qmss_queuePushDescSize() API is used to push a descriptor onto a queue, the descriptor when popped will have the descriptor size information in the lower 4 bits. This macro is provided to clear out the size information
#define QMSS_DESC_SIZE | ( | desc | ) | ((((uint32_t)desc & 0x0000000F) + 1) << 4) |
Macro to get the descriptor size if the popped descriptor contains the descriptor size. If Qmss_queuePushDescSize() API is used to push a descriptor onto a queue, the descriptor when popped will have the descriptor size information in the lower 4 bits. This macro is provided to obtain the size information. Minimum size is 16 bytes. Maximum size is 256 bytes
#define QMSS_EXIT_QUEUES_OPEN QMSS_LLD_EBASE-22 |
QMSS exit failed (queues still open)
#define QMSS_EXIT_REGIONS_PRESENT QMSS_LLD_EBASE-23 |
QMSS exit failed (regions still inserted)
#define QMSS_FIRMWARE_DOWNLOAD_FAILED QMSS_LLD_EBASE-11 |
QMSS PDSP firmware download failure
#define QMSS_FIRMWARE_REVISION_DIFFERENCE QMSS_LLD_EBASE-17 |
QMSS firmware revision difference
#define QMSS_HW_INIT_COMPLETE 0xABCD |
Used to indicate that QMSS HW Initialization is complete
#define QMSS_INVALID_PARAM QMSS_LLD_EBASE-1 |
QMSS LLD invalid parameter
#define QMSS_INVALID_QUEUE_NUMBER_TAB QMSS_LLD_EBASE-19 |
QMSS Bad Queue Number Configuration Table
#define QMSS_INVALID_SRIO_GARBAGE_QUEUE QMSS_LLD_EBASE-18 |
QMSS firmware invalid garbage return queue
#define QMSS_LINKING_RAM_REGION_0_DEFAULT_SIZE 0x3FFF |
Internal Linking RAM default size
#define QMSS_LLD_EBASE (-128) |
QMSS Error Base
QMSS maximum number of allowed descriptor are already configured
#define QMSS_MAX_INTD 2 |
QMSS maximum number of INTDs
#define QMSS_MAX_MEM_REGIONS 64 |
QMSS maximum number of memory regions
#define QMSS_MAX_PDSP 8 |
QMSS maximum number of PDSPS
#define QMSS_MAX_QMGR_GROUPS 2 |
QMSS maximum number of queue groups (QMGRs that run independently)
#define QMSS_MAX_QUEUE_TYPES 30 |
QMSS maximum number of queue types (per group)
#define QMSS_MAX_QUEUES 16384 |
QMSS maximum number of queues
QMSS memory region already initialized
#define QMSS_MEMREGION_INVALID_INDEX QMSS_LLD_EBASE-8 |
QMSS Specified memory region index is invalid or no memory regions are available
#define QMSS_MEMREGION_INVALID_PARAM QMSS_LLD_EBASE-6 |
QMSS memory region invalid parameter
#define QMSS_MEMREGION_NOT_INITIALIZED QMSS_LLD_EBASE-4 |
QMSS memory region not initialized
#define QMSS_MEMREGION_ORDERING QMSS_LLD_EBASE-10 |
QMSS memory region not in acscending order
#define QMSS_MEMREGION_OVERLAP QMSS_LLD_EBASE-9 |
QMSS memory region overlap
#define QMSS_NOT_INITIALIZED QMSS_LLD_EBASE-2 |
QMSS LLD not initialized
#define QMSS_PARAM_NOT_SPECIFIED -1 |
Used as input parameter when queue number is not known and not specified
#define QMSS_QCMD_GET_QUEUE_BASE 0x80 |
QMSS QoS commands
#define QMSS_QCMD_INVALID_COMMAND 2 |
QMSS QoS invalid command return code
#define QMSS_QCMD_INVALID_INDEX 3 |
QMSS QoS invalid index return code
#define QMSS_QCMD_INVALID_MODE 100 |
QMSS QoS invalid cluster mode
#define QMSS_QCMD_INVALID_OPTION 4 |
QMSS QoS invalid option return code
#define QMSS_QCMD_INVALID_RR_EGRESS_Q 103 |
QMSS QoS invalid round robin low priority q num
#define QMSS_QCMD_INVALID_RR_HIGH_Q 101 |
QMSS QoS invalid round robin high priority q num
#define QMSS_QCMD_INVALID_RR_LOW_Q 102 |
QMSS QoS invalid round robin low priority q num
#define QMSS_QCMD_INVALID_SRIO_NUM_Q 104 |
QMSS QoS SRIO invalid number of queues
#define QMSS_QM_CONTROL_DENIED QMSS_LLD_EBASE-21 |
QMSS control of either QM was denied by RM
#define QMSS_QOS_MAX_QUE_RR_HIGH_PRI 4 |
Specifications for Round Robin cluster
#define QMSS_QOS_PDSP_NUM 1 |
QMSS QoS PDSP number. QoS PDSP is downloaded to PDSP 1
#define QMSS_QOS_SCHED_BYTES_SCALE_SHIFT 11 |
Shift to convert from bytes to the format used for credits. This is used when the type is Qmss_QosSchedAcctType_BYTES 8 means that each unit represents 1/2048 of a byte
#define QMSS_QOS_SCHED_DROP_SCHED_CFG_PROFILES 8 |
Number of drop scheduler config profiles supported
Number of full feature physical ports, when drop scheduler present
Number of reduced feature physical ports, when drop scheduler present
(QMSS_QOS_SCHED_DROP_SCHED_FULL_MAX_PHYS_PORTS +\ QMSS_QOS_SCHED_DROP_SCHED_LITE_MAX_PHYS_PORTS)
Total number of physical ports when drop scheduler present
#define QMSS_QOS_SCHED_DROP_SCHED_MAX_TC 16 |
Maximum drop scheduler time constant
#define QMSS_QOS_SCHED_DROP_SCHED_OUT_PROFILES 36 |
Number of drop scheduler output profiles supported
#define QMSS_QOS_SCHED_DROP_SCHED_QUE_CONFIGS 80 |
Number of drop scheduler input queue configs supported
#define QMSS_QOS_SCHED_DROP_SCHED_STATS_BLOCKS 48 |
Number of drop scheduler stats blocks supported
#define QMSS_QOS_SCHED_DROP_SCHED_STATS_QUEUES 4 |
Number of stats queue pairs for push stats
#define QMSS_QOS_SCHED_FULL_MAX_LOG_GROUPS 5 |
Number of logical groups in full featured port
#define QMSS_QOS_SCHED_FULL_MAX_PHYS_PORTS 2 |
Number of full featured physical ports
#define QMSS_QOS_SCHED_FULL_MAX_QUEUES_PER_GROUP 8 |
Number of queues per group in full featured port
#define QMSS_QOS_SCHED_INVALID_CFG_PROF_IDX 124 |
QMSS QoS Scheduler - config profile index invalid
#define QMSS_QOS_SCHED_INVALID_CIR_ITERATION 110 |
QMSS QoS scheduler cirIteration invalid (negative)
#define QMSS_QOS_SCHED_INVALID_CIR_MAX 108 |
QMSS QoS scheduler cirMax too big (adding credit would overflow) or negative
#define QMSS_QOS_SCHED_INVALID_CIRTYPE 104 |
QMSS QoS scheduler invalid port config cirType
#define QMSS_QOS_SCHED_INVALID_COMMAND 2 |
QMSS QoS scheduler invalid command return code
#define QMSS_QOS_SCHED_INVALID_CONGTYPE 105 |
QMSS QoS scheduler invalid port config congestionType
#define QMSS_QOS_SCHED_INVALID_DROP_MODE 121 |
QMSS QoS Scheduler - drop scheduler mode bad
#define QMSS_QOS_SCHED_INVALID_GROUP 101 |
QMSS QoS scheduler invalid group in port
#define QMSS_QOS_SCHED_INVALID_GROUP_STATE 107 |
QMSS QoS scheduler attempted to configure a running group
#define QMSS_QOS_SCHED_INVALID_INDEX 3 |
QMSS QoS scheduler invalid index return code
#define QMSS_QOS_SCHED_INVALID_INTNUM 131 |
QMSS QoS Scheduler - invalid interrupt number
#define QMSS_QOS_SCHED_INVALID_MAGIC 116 |
QMSS QoS scheduler invalid/unknown magic number
#define QMSS_QOS_SCHED_INVALID_OPTION 4 |
QMSS QoS scheduler invalid option return code
#define QMSS_QOS_SCHED_INVALID_OUT_PROF_IDX 126 |
QMSS QoS Scheduler - output profile index invalid
#define QMSS_QOS_SCHED_INVALID_PARAM 115 |
QMSS QoS scheduler invalid argument
#define QMSS_QOS_SCHED_INVALID_PIR_ITERATION 111 |
QMSS QoS scheduler pirIteration invalid (negative)
#define QMSS_QOS_SCHED_INVALID_PIR_MAX 109 |
QMSS QoS scheduler pirMax too big (adding credit would overflow) or negative
#define QMSS_QOS_SCHED_INVALID_PORT 100 |
QMSS QoS scheduler invalid physical port
#define QMSS_QOS_SCHED_INVALID_PORT_STATE 106 |
QMSS QoS scheduler attempted to configure a running port
#define QMSS_QOS_SCHED_INVALID_QUEUE 102 |
QMSS QoS scheduler invalid queue in group
#define QMSS_QOS_SCHED_INVALID_RED_TC 123 |
QMSS QoS Scheduler - drop scheduler RED time constant invalid
#define QMSS_QOS_SCHED_INVALID_RED_THRESH 127 |
QMSS QoS Scheduler - drop sched REDLowThresh >= REDHighThresh
#define QMSS_QOS_SCHED_INVALID_RED_THRESH_RECIP 128 |
QMSS QoS Scheduler - drop sched computation of 1.0 / (REDHighThresh - REDLowThresh) >> timeConstantP2 failed
#define QMSS_QOS_SCHED_INVALID_STATS_BLOCK_IDX 125 |
QMSS QoS Scheduler - stats block index invalid
#define QMSS_QOS_SCHED_INVALID_TAIL_DROP_THRESH 132 |
QMSS QoS Scheduler - invalid tail drop threshold (overflow)
#define QMSS_QOS_SCHED_INVALID_TAILDROP_THRESH_TYPE 122 |
QMSS QoS Scheduler - tail drop threshold type bad
#define QMSS_QOS_SCHED_INVALID_THROTTYPE 118 |
QMSS QoS scheduler - invalid port config outThrotType
#define QMSS_QOS_SCHED_INVALID_VALID_FLAG 120 |
QMSS QoS Scheduler - profile valid flag enum bad
#define QMSS_QOS_SCHED_INVALID_WRR_CREDIT 112 |
QMSS QoS scheduler wrrInitialCredit invalid (too big or negative)
#define QMSS_QOS_SCHED_INVALID_WRRTYPE 103 |
QMSS QoS scheduler invalid port config wrrType
#define QMSS_QOS_SCHED_LITE_MAX_LOG_GROUPS 1 |
Number of logical groups in reduced feature port
#define QMSS_QOS_SCHED_LITE_MAX_PHYS_PORTS 10 |
Number of reduced feature physical ports
#define QMSS_QOS_SCHED_LITE_MAX_QUEUES_PER_GROUP 4 |
Number of queues per group in reduced feature port
#define QMSS_QOS_SCHED_MAX_PHYS_PORTS |
(QMSS_QOS_SCHED_FULL_MAX_PHYS_PORTS +\ QMSS_QOS_SCHED_LITE_MAX_PHYS_PORTS)
Total number of physical ports
#define QMSS_QOS_SCHED_OVERFLOW 114 |
QMSS QoS scheduler result overflowed
#define QMSS_QOS_SCHED_PACKETS_SCALE_SHIFT 20 |
Shift to convert from packets to the format used for credits. This is used when the type is Qmss_QosSchedAcctType_PACKETS. 20 means that each unit represents 1/1048576 of a packet
#define QMSS_QOS_SCHED_PDSP_NUM 1 |
QMSS QoS PDSP number. QoS PDSP is downloaded to PDSP 1
#define QMSS_QOS_SCHED_REQ_DROP_SCHED 119 |
QMSS QoS Scheduler - API requires build with drop scheduler
#define QMSS_QOS_SCHED_RETCODE_SUCCESS 1 |
QMSS QoS scheduler return and Error Codes QMSS QoS scheduler successful return code
#define QMSS_QOS_SCHED_SMALL_WRR_CREDIT 133 |
QMSS QoS scheduler wrrInitialCredit invalid (too small)
#define QMSS_QOS_SCHED_STATS_DISCARDED_BYTES 4 |
Bits representing statistics types (dropped bytes)
#define QMSS_QOS_SCHED_STATS_DISCARDED_PACKETS 8 |
Bits representing statistics types (dropped packets)
#define QMSS_QOS_SCHED_STATS_FORWARDED_BYTES 1 |
Bits representing statistics types (forwarded bytes)
#define QMSS_QOS_SCHED_STATS_FORWARDED_PACKETS 2 |
Bits representing statistics types (forwarded packets)
#define QMSS_QOS_SCHED_TAIL_ONLY 134 |
QMSS QoS scheudler push proxy can only do tail push
#define QMSS_QOS_SCHED_UNDERFLOW 113 |
QMSS QoS scheduler result underflowed
#define QMSS_QOS_SCHED_UNUSED_GROUP_ARGS 117 |
QMSS QoS scheduler - unused argument is defined
#define QMSS_QOS_SRIO_MIN_TX_Q 2 |
Specifications for the SRIO monitor cluster
#define QMSS_QOS_SRIO_SHADOW_GARBAGE_Q_OFFSET 0 |
Offset relative to Qmss_QosSrioCfg::queBase for first Shadow Garbage Collection Queue.
#define QMSS_QOS_SRIO_SHADOW_TX_COMPLETION_Q_OFFSET 11 |
Offset relative to Qmss_QosSrioCfg::queBase for first Shadow Transmit Completion Queue.
SRIO's return queues should be pointed here.
#define QMSS_QOS_SRIO_SHADOW_TX_Q_OFFSET 6 |
Offset relative to Qmss_QosSrioCfg::queBase for first Shadow Transmit Queue.
SW places descriptors for SRIO transactions here
#define QMSS_QOS_SRIO_TX_COMPLETION_Q_OFFSET 16 |
Offset relative to Qmss_QosSrioCfg::queBase for first Transmit Completion Queue.
The firmware will move descriptors from the Shadow Transmit Completion Queue to the Transmit Completion queue after subtracting the pending descriptor the number of pending descriptors on the hardware tx queue.
#define QMSS_QOS_SRIO_TX_MAX_FW_Q 21 |
Total possible queues firmware can use, starting from Qmss_QosSrioCfg::queBase.
#define QMSS_QUEUE_GROUP | ( | hndl | ) | ((uint32_t)(hndl) >> 13) |
Macro to extract the queue manager group from the queue handle These are not to be confused with Qmss_getQueueNumber (to be used with CPPI) or Qmss_getQIDFromHandle (to be used with firmware) and are intended for internal LLD and unit test use only.
#define QMSS_QUEUE_NOT_ALREADY_OPEN QMSS_LLD_EBASE-25 |
Qmss_queueOpenUse called on queue not already open
#define QMSS_QUEUE_OPEN_ERROR QMSS_LLD_EBASE-3 |
QMSS LLD queue open error
#define QMSS_RESOURCE_ALLOCATE_INIT_DENIED QMSS_LLD_EBASE-12 |
QMSS resource allocator to initialize denied
#define QMSS_RESOURCE_ALLOCATE_USE_DENIED QMSS_LLD_EBASE-13 |
QMSS resource allocation to use denied
#define QMSS_RESOURCE_FREE_DENIED QMSS_LLD_EBASE-20 |
QMSS resource free was denied by RM
QMSS general linking RAM initialization permission denied
QMSS memory region initialization permission denied
QMSS memory region usage permission denied
#define QMSS_RM_INTERNAL_ERROR QMSS_LLD_EBASE-24 |
Internal bookkeeping out of sync with RM
#define QMSS_RM_RESOURCE_NAME_MAX_CHARS 32 |
QMSS RM resource name maximum characters
#define QMSS_SOK 0 |
QMSS Low level Driver return and Error Codes QMSS successful return code