OpenNSL API Guide and Reference Manual
Data Structures | Macros | Typedefs | Enumerations | Functions
#include <opennsl/types.h>
#include <opennsl/switch.h>
#include <shared/port.h>

Go to the source code of this file.

Data Structures

struct  opennsl_cosq_egress_multicast_config_s
 multicast configuration settings More...
 
struct  opennsl_cosq_gport_discard_s
 For Virtual output queues (system ports) More...
 
struct  opennsl_cosq_gport_info_s
 gport information related to getting a handle More...
 
struct  opennsl_cosq_gport_stat_profile_s
 Statistics Profile. More...
 

Macros

#define OPENNSL_COSQ_ALL   0x00000001
 
#define OPENNSL_COSQ_BW_EAV_MODE   0x00000008
 Prioritize selected queue(s) for bandwidth before non-selected queue(s).
 
#define OPENNSL_COSQ_BW_LLFC   0x00000010
 Link Level Flow Control setting.
 
#define OPENNSL_COSQ_BW_NOT_COMMIT   0x00000040
 Set rate to SW DB only, commit to HW is done when calling the API with the same GPort type and without NOT_COMMIT flag.
 
#define OPENNSL_COSQ_BW_PACKET_MODE   0x00000020
 The bandwidth specified is in packets per second instead of kbits per second.
 
#define OPENNSL_COSQ_DEFICIT_ROUND_ROBIN   0x05
 XGS3 only.
 
#define OPENNSL_COSQ_DISCARD_BYTES   0x2000
 
#define OPENNSL_COSQ_DISCARD_COLOR_ALL   0x0F00
 
#define OPENNSL_COSQ_DISCARD_COLOR_BLACK   0x0800
 
#define OPENNSL_COSQ_DISCARD_COLOR_GREEN   0x0100
 
#define OPENNSL_COSQ_DISCARD_COLOR_RED   0x0400
 
#define OPENNSL_COSQ_DISCARD_COLOR_YELLOW   0x0200
 
#define OPENNSL_COSQ_DISCARD_DEVICE   0x10000
 
#define OPENNSL_COSQ_DISCARD_DROP_FIRST   OPENNSL_COSQ_DISCARD_COLOR_RED
 
#define OPENNSL_COSQ_DISCARD_ENABLE   0x0001
 
#define OPENNSL_COSQ_DISCARD_IFP   0x400000
 
#define OPENNSL_COSQ_DISCARD_MARK_CONGESTION   0x4000
 
#define OPENNSL_COSQ_DISCARD_NONTCP   0x0004
 
#define OPENNSL_COSQ_DISCARD_OUTER_CFI   0x800000
 
#define OPENNSL_COSQ_DISCARD_PACKETS   0x1000
 
#define OPENNSL_COSQ_DISCARD_PORT   0x8000
 
#define OPENNSL_COSQ_DISCARD_PROBABILITY1   0x100000
 
#define OPENNSL_COSQ_DISCARD_PROBABILITY2   0x200000
 
#define OPENNSL_COSQ_DISCARD_SYSTEM   0x80000
 
#define OPENNSL_COSQ_DISCARD_TCP   0x40000
 
#define OPENNSL_COSQ_GPORT_DESTMOD_UCAST_QUEUE_GROUP   0x00000010
 
#define OPENNSL_COSQ_GPORT_DISABLE   0x00000100
 Disable queue, used for OPENNSL_COSQ_GPORT_CALENDAR scheduling discipline.
 
#define OPENNSL_COSQ_GPORT_EGRESS_GROUP   0x00000080
 
#define OPENNSL_COSQ_GPORT_MCAST_QUEUE   0x00000010
 
#define OPENNSL_COSQ_GPORT_MCAST_QUEUE_GROUP   0x00000020
 
#define OPENNSL_COSQ_GPORT_OVERLAY   0x00000004
 
#define OPENNSL_COSQ_GPORT_SCHEDULER   0x00000002
 
#define OPENNSL_COSQ_GPORT_STATS_SHARED   0x00000001
 
#define OPENNSL_COSQ_GPORT_SUBSCRIBER   0x00000040
 
#define OPENNSL_COSQ_GPORT_UCAST_QUEUE_GROUP   0x00000008
 
#define OPENNSL_COSQ_GPORT_WITH_ID   0x00000001
 
#define OPENNSL_COSQ_HIGH_PRIORITY   -4
 
#define OPENNSL_COSQ_LOW_PRIORITY   -5
 
#define OPENNSL_COSQ_MULTICAST_SCHEDULED   0x00000001
 multicast scheduled values are valid
 
#define OPENNSL_COSQ_NONE   0x0
 Pass through.
 
#define OPENNSL_COSQ_PRIO_VALID(prio)   ((prio) >= 0 && (prio < 8))
 
#define OPENNSL_COSQ_QUEUE_VALID(unit, numq)   ((numq) >= 0 && (numq) < NUM_COS(unit))
 
#define OPENNSL_COSQ_ROUND_ROBIN   0x02
 Weights are ignored.
 
#define OPENNSL_COSQ_SP0   0x0C
 Strict priority level 0.
 
#define OPENNSL_COSQ_SP1   0x0D
 Strict priority level.
 
#define OPENNSL_COSQ_STRICT   0x01
 Weights are ignored.
 
#define OPENNSL_COSQ_WEIGHT_MIN   1
 
#define OPENNSL_COSQ_WEIGHT_STRICT   0
 
#define OPENNSL_COSQ_WEIGHT_UNLIMITED   -1
 
#define OPENNSL_COSQ_WEIGHTED_FAIR_QUEUING   0x04
 
#define OPENNSL_COSQ_WEIGHTED_ROUND_ROBIN   0x03
 

Typedefs

typedef enum opennsl_cosq_control_e opennsl_cosq_control_t
 Features that can be controlled on a gport/cosq basis.
 
typedef struct
opennsl_cosq_egress_multicast_config_s 
opennsl_cosq_egress_multicast_config_t
 multicast configuration settings
 
typedef struct
opennsl_cosq_gport_discard_s 
opennsl_cosq_gport_discard_t
 For Virtual output queues (system ports)
 
typedef struct
opennsl_cosq_gport_info_s 
opennsl_cosq_gport_info_t
 gport information related to getting a handle
 
typedef struct
opennsl_cosq_gport_stat_profile_s 
opennsl_cosq_gport_stat_profile_t
 Statistics Profile.
 
typedef enum
opennsl_cosq_gport_stats_e 
opennsl_cosq_gport_stats_t
 For Virtual output queues (system ports)
 
typedef int(* opennsl_cosq_gport_traverse_cb )(int unit, opennsl_gport_t port, int numq, uint32 flags, opennsl_gport_t gport, void *user_data)
 
typedef enum
opennsl_cosq_gport_type_e 
opennsl_cosq_gport_type_t
 cosq gport type eumerations
 
typedef enum opennsl_cosq_stat_e opennsl_cosq_stat_t
 XGS3 cosq counters.
 

Enumerations

enum  opennsl_cosq_control_e {
  opennslCosqControlEgressUCQueueSharedLimitBytes = 79,
  opennslCosqControlEgressMCQueueMinLimitBytes = 84,
  opennslCosqControlPortQueueUcast = 103,
  opennslCosqControlPortQueueMcast = 104
}
 Features that can be controlled on a gport/cosq basis. More...
 
enum  opennsl_cosq_gport_stats_e {
  opennslCosqGportGreenAcceptedPkts = 0,
  opennslCosqGportGreenAcceptedBytes = 1,
  opennslCosqGportNotGreenAcceptedPkts = 2,
  opennslCosqGportNotGreenAcceptedBytes = 3,
  opennslCosqGportGreenCongestionMarkedPkts = 4,
  opennslCosqGportGreenCongestionMarkedBytes = 5,
  opennslCosqGportGreenDiscardDroppedPkts = 6,
  opennslCosqGportGreenDiscardDroppedBytes = 7,
  opennslCosqGportYellowAcceptedPkts = 8,
  opennslCosqGportYellowAcceptedBytes = 9,
  opennslCosqGportYellowCongestionMarkedPkts = 10,
  opennslCosqGportYellowCongestionMarkedBytes = 11,
  opennslCosqGportYellowDiscardDroppedPkts = 12,
  opennslCosqGportYellowDiscardDroppedBytes = 13,
  opennslCosqGportRedAcceptedPkts = 14,
  opennslCosqGportRedAcceptedBytes = 15,
  opennslCosqGportRedCongestionMarkedPkts = 16,
  opennslCosqGportRedCongestionMarkedBytes = 17,
  opennslCosqGportRedDiscardDroppedPkts = 18,
  opennslCosqGportRedDiscardDroppedBytes = 19,
  opennslCosqGportBlackAcceptedPkts = 20,
  opennslCosqGportBlackAcceptedBytes = 21,
  opennslCosqGportNonWredDroppedPkts = 22,
  opennslCosqGportNonWredDroppedBytes = 23,
  opennslCosqGportDequeuedPkts = 24,
  opennslCosqGportDequeuedBytes = 25,
  opennslCosqGportGreenDroppedPkts = 26,
  opennslCosqGportGreenDroppedBytes = 27,
  opennslCosqGportNotGreenDroppedPkts = 28,
  opennslCosqGportNotGreenDroppedBytes = 29,
  opennslCosqGportYellowDroppedPkts = 30,
  opennslCosqGportYellowDroppedBytes = 31,
  opennslCosqGportRedDroppedPkts = 32,
  opennslCosqGportRedDroppedBytes = 33,
  opennslCosqGportBlackCongestionMarkedPkts = 34,
  opennslCosqGportBlackCongestionMarkedBytes = 35,
  opennslCosqGportBlackDiscardDroppedPkts = 36,
  opennslCosqGportBlackDiscardDroppedBytes = 37,
  opennslCosqGportBlackDroppedPkts = 38,
  opennslCosqGportBlackDroppedBytes = 39,
  opennslCosqGportOverSubscribeTotelDroppedPkts = 40,
  opennslCosqGportOverSubscribeTotalDroppedBytes = 41,
  opennslCosqGportOverSubscribeGuaranteeDroppedPkts = 42,
  opennslCosqGportOverSubscribeGuaranteedDroppedBytes = 43,
  opennslCosqGportDiscardDroppedPkts = 44,
  opennslCosqGportDiscardDroppedBytes = 45,
  opennslCosqGportYellowRedDiscardDroppedPkts = 46,
  opennslCosqGportYellowRedDiscardDroppedBytes = 47,
  opennslCosqGportEnqueuedPkts = 48,
  opennslCosqGportEnqueuedBytes = 49,
  opennslCosqGportOutLimitDroppedPkts = 50,
  opennslCosqGportOutLimitDroppedBytes = 51,
  opennslCosqGportOutLimitDroppedGreenPkts = 52,
  opennslCosqGportOutLimitDroppedGreenBytes = 53,
  opennslCosqGportOutLimitDroppedYellowPkts = 54,
  opennslCosqGportOutLimitDroppedYellowBytes = 55,
  opennslCosqGportOutLimitDroppedRedPkts = 56,
  opennslCosqGportOutLimitDroppedRedBytes = 57,
  opennslCosqGportOutLimitDroppedMulticastPkts = 58,
  opennslCosqGportOutLimitDroppedMulticastBytes = 59,
  opennslCosqGportOutPkts = 60,
  opennslCosqGportOutBytes = 61,
  opennslCosqGportReceivedBytes = 62,
  opennslCosqGportReceivedPkts = 63,
  opennslCosqGportDroppedBytes = 64,
  opennslCosqGportDroppedPkts = 65,
  opennslCosqGportDelayedBytes = 66,
  opennslCosqGportDelayedHundredUs = 67,
  opennslCosqGportGreenPkts = 68,
  opennslCosqGportGreenBytes = 69,
  opennslCosqGportNotGreenPkts = 70,
  opennslCosqGportNotGreenBytes = 71,
  opennslCosqGportOffset0Bytes = 72,
  opennslCosqGportOffset0Packets = 73,
  opennslCosqGportOffset1Bytes = 74,
  opennslCosqGportOffset1Packets = 75,
  opennslCosqGportOffset2Bytes = 76,
  opennslCosqGportOffset2Packets = 77,
  opennslCosqGportOffset3Bytes = 78,
  opennslCosqGportOffset3Packets = 79,
  opennslCosqGportOffset4Bytes = 80,
  opennslCosqGportOffset4Packets = 81,
  opennslCosqGportOffset5Bytes = 82,
  opennslCosqGportOffset5Packets = 83,
  opennslCosqGportOffset6Bytes = 84,
  opennslCosqGportOffset6Packets = 85,
  opennslCosqGportOffset7Bytes = 86,
  opennslCosqGportOffset7Packets = 87,
  opennslCosqGportStatCount = 88
}
 For Virtual output queues (system ports) More...
 
enum  opennsl_cosq_gport_type_e {
  opennslCosqGportTypeUnicastEgress = 1,
  opennslCosqGportTypeMulticastEgress = 2,
  opennslCosqGportTypeLocalPort = 6
}
 cosq gport type eumerations More...
 
enum  opennsl_cosq_stat_e {
  opennslCosqStatDroppedPackets = 0,
  opennslCosqStatDroppedBytes = 1,
  opennslCosqStatYellowCongestionDroppedPackets = 2,
  opennslCosqStatRedCongestionDroppedPackets = 3,
  opennslCosqStatGreenDiscardDroppedPackets = 4,
  opennslCosqStatYellowDiscardDroppedPackets = 5,
  opennslCosqStatRedDiscardDroppedPackets = 6,
  opennslCosqStatOutPackets = 7,
  opennslCosqStatOutBytes = 8
}
 XGS3 cosq counters. More...
 

Functions

int opennsl_cosq_config_get (int unit, int *numq) LIB_DLL_EXPORTED
 Configure the number of Class of Service Queues (COSQs).
 
int opennsl_cosq_config_set (int unit, int numq) LIB_DLL_EXPORTED
 Configure the number of Class of Service Queues (COSQs).
 
int opennsl_cosq_control_get (int unit, opennsl_gport_t port, opennsl_cos_queue_t cosq, opennsl_cosq_control_t type, int *arg) LIB_DLL_EXPORTED
 Set various features at the gport/cosq level.
 
int opennsl_cosq_control_set (int unit, opennsl_gport_t port, opennsl_cos_queue_t cosq, opennsl_cosq_control_t type, int arg) LIB_DLL_EXPORTED
 Set various features at the gport/cosq level.
 
int opennsl_cosq_detach (int unit) LIB_DLL_EXPORTED
 De-initialize the CoSQ subsystem.
 
int opennsl_cosq_discard_get (int unit, uint32 *flags) LIB_DLL_EXPORTED
 Configure Weighted Random Early Discard (WRED).
 
int opennsl_cosq_discard_port_get (int unit, opennsl_port_t port, opennsl_cos_queue_t cosq, uint32 color, int *drop_start, int *drop_slope, int *average_time) LIB_DLL_EXPORTED
 Configure a port's Weighted Random Early Discard (WRED) parameters.
 
int opennsl_cosq_discard_port_set (int unit, opennsl_port_t port, opennsl_cos_queue_t cosq, uint32 color, int drop_start, int drop_slope, int average_time) LIB_DLL_EXPORTED
 Configure a port's Weighted Random Early Discard (WRED) parameters.
 
int opennsl_cosq_discard_set (int unit, uint32 flags) LIB_DLL_EXPORTED
 Configure Weighted Random Early Discard (WRED).
 
int opennsl_cosq_gport_add (int unit, opennsl_gport_t port, int numq, uint32 flags, opennsl_gport_t *gport) LIB_DLL_EXPORTED
 Allocate/Retrieve unicast queue group and scheduler queue group configuration.
 
int opennsl_cosq_gport_attach (int unit, opennsl_gport_t sched_port, opennsl_gport_t input_port, opennsl_cos_queue_t cosq) LIB_DLL_EXPORTED
 Attach/Detach the output of a GPORT to the input of a scheduler GPORT.
 
int opennsl_cosq_gport_attach_get (int unit, opennsl_gport_t sched_port, opennsl_gport_t *input_port, opennsl_cos_queue_t *cosq) LIB_DLL_EXPORTED
 Attach/Detach the output of a GPORT to the input of a scheduler GPORT.
 
int opennsl_cosq_gport_bandwidth_get (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, uint32 *kbits_sec_min, uint32 *kbits_sec_max, uint32 *flags) LIB_DLL_EXPORTED
 Configure/Retrieve bandwidth setting.
 
int opennsl_cosq_gport_bandwidth_set (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, uint32 kbits_sec_min, uint32 kbits_sec_max, uint32 flags) LIB_DLL_EXPORTED
 Configure/Retrieve bandwidth setting.
 
int opennsl_cosq_gport_child_get (int unit, opennsl_gport_t in_gport, opennsl_cos_queue_t cosq, opennsl_gport_t *out_gport) LIB_DLL_EXPORTED
 Get the child node GPORT atatched to N-th index (cosq) of the scheduler GPORT.
 
int opennsl_cosq_gport_delete (int unit, opennsl_gport_t gport) LIB_DLL_EXPORTED
 Deletes queue group.
 
int opennsl_cosq_gport_detach (int unit, opennsl_gport_t sched_port, opennsl_gport_t input_port, opennsl_cos_queue_t cosq) LIB_DLL_EXPORTED
 Attach/Detach the output of a GPORT to the input of a scheduler GPORT.
 
int opennsl_cosq_gport_discard_get (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, opennsl_cosq_gport_discard_t *discard) LIB_DLL_EXPORTED
 Configure/Retrieve discard setting.
 
int opennsl_cosq_gport_discard_set (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, opennsl_cosq_gport_discard_t *discard) LIB_DLL_EXPORTED
 Configure/Retrieve discard setting.
 
int opennsl_cosq_gport_egress_map_get (int unit, opennsl_gport_t gport, opennsl_cos_t ingress_pri, opennsl_color_t ingress_dp, opennsl_cos_queue_t *offset) LIB_DLL_EXPORTED
 Configure/retrieve {traffic class, dp} mapping to egress queue on a port.
 
int opennsl_cosq_gport_egress_map_set (int unit, opennsl_gport_t gport, opennsl_cos_t ingress_pri, opennsl_color_t ingress_dp, opennsl_cos_queue_t offset) LIB_DLL_EXPORTED
 Configure/retrieve {traffic class, dp} mapping to egress queue on a port.
 
int opennsl_cosq_gport_egress_multicast_config_get (int unit, opennsl_gport_t gport, opennsl_cos_t ingress_pri, opennsl_color_t ingress_dp, uint32 flags, opennsl_cosq_egress_multicast_config_t *config) LIB_DLL_EXPORTED
 Configure/retrieve {traffic class, dp} mapping to multicast egress configuration on a port.
 
int opennsl_cosq_gport_egress_multicast_config_set (int unit, opennsl_gport_t gport, opennsl_cos_t ingress_pri, opennsl_color_t ingress_dp, uint32 flags, opennsl_cosq_egress_multicast_config_t *config) LIB_DLL_EXPORTED
 Configure/retrieve {traffic class, dp} mapping to multicast egress configuration on a port.
 
int opennsl_cosq_gport_enable_get (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, int *enable) LIB_DLL_EXPORTED
 Configure/Retrieve enable/disable state of a cos level in a queue group.
 
int opennsl_cosq_gport_enable_set (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, int enable) LIB_DLL_EXPORTED
 Configure/Retrieve enable/disable state of a cos level in a queue group.
 
int opennsl_cosq_gport_get (int unit, opennsl_gport_t gport, opennsl_gport_t *physical_port, int *num_cos_levels, uint32 *flags) LIB_DLL_EXPORTED
 Allocate/Retrieve unicast queue group and scheduler queue group configuration.
 
int opennsl_cosq_gport_handle_get (int unit, opennsl_cosq_gport_type_t gport_type, opennsl_cosq_gport_info_t *gport_info) LIB_DLL_EXPORTED
 Getting a gport handle.
 
int opennsl_cosq_gport_mapping_get (int unit, opennsl_port_t ing_port, opennsl_cos_t int_pri, uint32 flags, opennsl_gport_t *gport, opennsl_cos_queue_t *cosq) LIB_DLL_EXPORTED
 Get or set the mapping from internal priority to CoS queue.
 
int opennsl_cosq_gport_mapping_set (int unit, opennsl_port_t ing_port, opennsl_cos_t int_pri, uint32 flags, opennsl_gport_t gport, opennsl_cos_queue_t cosq) LIB_DLL_EXPORTED
 Get or set the mapping from internal priority to CoS queue.
 
int opennsl_cosq_gport_sched_config_get (int unit, opennsl_gport_t gport, int sched_mode, int int_pri, uint32 *flags) LIB_DLL_EXPORTED
 Mapping/redirecting scheduling discipline to Egress FIFO.
 
int opennsl_cosq_gport_sched_config_set (int unit, opennsl_gport_t gport, int sched_mode, int int_pri, uint32 flags) LIB_DLL_EXPORTED
 Mapping/redirecting scheduling discipline to Egress FIFO.
 
int opennsl_cosq_gport_sched_get (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, int *mode, int *weight) LIB_DLL_EXPORTED
 Configure/retrieve scheduling policy.
 
int opennsl_cosq_gport_sched_set (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, int mode, int weight) LIB_DLL_EXPORTED
 Configure/retrieve scheduling policy.
 
int opennsl_cosq_gport_stat_config_get (int unit, opennsl_gport_t gport, opennsl_gport_t lgl_gport, opennsl_cos_queue_t cosq, uint32 flags, opennsl_cosq_gport_stat_profile_t *profile) LIB_DLL_EXPORTED
 Get a previously-configured Central Statistic profile that captures WRED packets.
 
int opennsl_cosq_gport_stat_config_set (int unit, opennsl_gport_t gport, opennsl_gport_t lgl_gport, opennsl_cos_queue_t cosq, uint32 flags, opennsl_cosq_gport_stat_profile_t profile) LIB_DLL_EXPORTED
 Set up a Central Statistic profile to capture WRED packets.
 
int opennsl_cosq_gport_stat_enable_get (int unit, opennsl_gport_t gport, int *enable) LIB_DLL_EXPORTED
 Retrieve queue group statistic setting.
 
int opennsl_cosq_gport_stat_enable_set (int unit, opennsl_gport_t gport, int enable) LIB_DLL_EXPORTED
 Enable/Disable statistics for queue group.
 
int opennsl_cosq_gport_stat_get (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, opennsl_cosq_gport_stats_t stat, uint64 *value) LIB_DLL_EXPORTED
 Retrieve/Set Statistics.
 
int opennsl_cosq_gport_stat_set (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, opennsl_cosq_gport_stats_t stat, uint64 value) LIB_DLL_EXPORTED
 Retrieve/Set Statistics.
 
int opennsl_cosq_gport_stat_sync_get (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, opennsl_cosq_gport_stats_t stat, uint64 *value) LIB_DLL_EXPORTED
 Force an immediate counter update and retrieve statistics.
 
int opennsl_cosq_gport_statistic_get (int unit, opennsl_gport_t gport, opennsl_gport_t lgl_gport, opennsl_cos_queue_t cosq, uint32 flags, opennsl_cosq_gport_stats_t stat, uint64 *value) LIB_DLL_EXPORTED
 Get the value associated with a Central Statistics Index.
 
int opennsl_cosq_gport_statistic_set (int unit, opennsl_gport_t gport, opennsl_gport_t lgl_gport, opennsl_cos_queue_t cosq, uint32 flags, opennsl_cosq_gport_stats_t stat, uint64 value) LIB_DLL_EXPORTED
 Reset the value of a Central Statistics stat to zero.
 
int opennsl_cosq_gport_traverse (int unit, opennsl_cosq_gport_traverse_cb cb, void *user_data) LIB_DLL_EXPORTED
 Traverse all added CoS queue GPORTs and call the supplied callback routine for each one.
 
int opennsl_cosq_init (int unit) LIB_DLL_EXPORTED
 Initialize the CoSQ subsystem.
 
int opennsl_cosq_mapping_get (int unit, opennsl_cos_t priority, opennsl_cos_queue_t *cosq) LIB_DLL_EXPORTED
 Get or set the mapping from internal priority to CoS queue.
 
int opennsl_cosq_mapping_set (int unit, opennsl_cos_t priority, opennsl_cos_queue_t cosq) LIB_DLL_EXPORTED
 Get or set the mapping from internal priority to CoS queue.
 
int opennsl_cosq_port_bandwidth_get (int unit, opennsl_port_t port, opennsl_cos_queue_t cosq, uint32 *kbits_sec_min, uint32 *kbits_sec_max, uint32 *flags) LIB_DLL_EXPORTED
 Configure a port's bandwidth distribution among CoS queues.
 
int opennsl_cosq_port_bandwidth_set (int unit, opennsl_port_t port, opennsl_cos_queue_t cosq, uint32 kbits_sec_min, uint32 kbits_sec_max, uint32 flags) LIB_DLL_EXPORTED
 Configure a port's bandwidth distribution among CoS queues.
 
int opennsl_cosq_port_mapping_get (int unit, opennsl_port_t port, opennsl_cos_t priority, opennsl_cos_queue_t *cosq) LIB_DLL_EXPORTED
 Get or set the mapping from internal priority to CoS queue.
 
int opennsl_cosq_port_mapping_multi_get (int unit, opennsl_port_t port, int count, opennsl_cos_t *priority_array, opennsl_cos_queue_t *cosq_array) LIB_DLL_EXPORTED
 Get or set the mapping of multiple internal priorities to their corresponding CoS queues.
 
int opennsl_cosq_port_mapping_multi_set (int unit, opennsl_port_t port, int count, opennsl_cos_t *priority_array, opennsl_cos_queue_t *cosq_array) LIB_DLL_EXPORTED
 Get or set the mapping of multiple internal priorities to their corresponding CoS queues.
 
int opennsl_cosq_port_mapping_set (int unit, opennsl_port_t port, opennsl_cos_t priority, opennsl_cos_queue_t cosq) LIB_DLL_EXPORTED
 Get or set the mapping from internal priority to CoS queue.
 
int opennsl_cosq_port_sched_get (int unit, opennsl_pbmp_t pbm, int *mode, int weights[OPENNSL_COS_COUNT], int *delay) LIB_DLL_EXPORTED
 Get or set Class of Service policy, weights and delay.
 
int opennsl_cosq_port_sched_set (int unit, opennsl_pbmp_t pbm, int mode, const int weights[OPENNSL_COS_COUNT], int delay) LIB_DLL_EXPORTED
 Get or set Class of Service policy, weights and delay.
 
int opennsl_cosq_priority_get (int unit, int start_queue, int end_queue, int *pri_profile_id) LIB_DLL_EXPORTED
 Get the priority profile associated with a queue range.
 
int opennsl_cosq_priority_set (int unit, int start_queue, int end_queue, int pri_profile_id) LIB_DLL_EXPORTED
 Associate a priority profile with a queue range.
 
int opennsl_cosq_sched_get (int unit, int *mode, int weights[OPENNSL_COS_COUNT], int *delay) LIB_DLL_EXPORTED
 Get or set Class of Service policy, weights and delay.
 
int opennsl_cosq_sched_set (int unit, int mode, const int weights[OPENNSL_COS_COUNT], int delay) LIB_DLL_EXPORTED
 Get or set Class of Service policy, weights and delay.
 
int opennsl_cosq_sched_weight_max_get (int unit, int mode, int *weight_max) LIB_DLL_EXPORTED
 Retrieve maximum weights for given CoS policy.
 
int opennsl_cosq_stat_get (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, opennsl_cosq_stat_t stat, uint64 *value) LIB_DLL_EXPORTED
 Retrieve/set various MMU statistics based on stat type.
 
int opennsl_cosq_stat_set (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, opennsl_cosq_stat_t stat, uint64 value) LIB_DLL_EXPORTED
 Retrieve/set various MMU statistics based on stat type.
 
int opennsl_cosq_stat_sync_get (int unit, opennsl_gport_t gport, opennsl_cos_queue_t cosq, opennsl_cosq_stat_t stat, uint64 *value) LIB_DLL_EXPORTED
 Force an immediate counter update and retrieve various MMU statistics.