OpenNSL API Guide and Reference Manual
Data Structures | Macros | Typedefs | Functions
qosX.h File Reference
#include <opennsl/types.h>
#include <opennsl/multicast.h>
#include <opennsl/l3.h>

Go to the source code of this file.

Data Structures

struct  opennsl_qos_map_s
 QoS Map structure. More...
 

Macros

#define OPENNSL_QOS_MAP_EGRESS   0x0800
 
#define OPENNSL_QOS_MAP_ENCAP   0x0200
 
#define OPENNSL_QOS_MAP_IGNORE_OFFSET   0x20000
 
#define OPENNSL_QOS_MAP_INGRESS   0x0400
 
#define OPENNSL_QOS_MAP_IPV4   OPENNSL_QOS_MAP_L3
 
#define OPENNSL_QOS_MAP_IPV6   0x0080
 
#define OPENNSL_QOS_MAP_L2   0x0004
 
#define OPENNSL_QOS_MAP_L2_ETAG   0x80000
 
#define OPENNSL_QOS_MAP_L2_INNER_TAG   0x0008
 
#define OPENNSL_QOS_MAP_L2_OUTER_TAG   OPENNSL_QOS_MAP_L2
 
#define OPENNSL_QOS_MAP_L2_UNTAGGED   0x0010
 
#define OPENNSL_QOS_MAP_L2_VLAN_ETAG   0x100000
 
#define OPENNSL_QOS_MAP_L2_VLAN_PCP   0x0020
 
#define OPENNSL_QOS_MAP_L3   0x0040
 
#define OPENNSL_QOS_MAP_L3_L2   0x800000
 
#define OPENNSL_QOS_MAP_OPCODE   0x40000
 
#define OPENNSL_QOS_MAP_PACKET_INVALID   0x10000
 
#define OPENNSL_QOS_MAP_POLICER   0x8000
 
#define OPENNSL_QOS_MAP_QUEUE   0x4000
 
#define OPENNSL_QOS_MAP_REPLACE   0x0002
 
#define OPENNSL_QOS_MAP_SUBPORT   0x400000
 
#define OPENNSL_QOS_MAP_WITH_ID   0x0001
 

Typedefs

typedef struct opennsl_qos_map_s opennsl_qos_map_t
 QoS Map structure.
 

Functions

int opennsl_qos_map_add (int unit, uint32 flags, opennsl_qos_map_t *map, int map_id) LIB_DLL_EXPORTED
 Add a specific mapping entry to a QoS map.
 
int opennsl_qos_map_create (int unit, uint32 flags, int *map_id) LIB_DLL_EXPORTED
 Allocates hardware resources for QoS mapping.
 
int opennsl_qos_map_delete (int unit, uint32 flags, opennsl_qos_map_t *map, int map_id) LIB_DLL_EXPORTED
 Deletes a specific mapping entry from a QoS map.
 
int opennsl_qos_map_destroy (int unit, int map_id) LIB_DLL_EXPORTED
 Frees hardware resources for QoS mapping.
 
int opennsl_qos_map_multi_get (int unit, uint32 flags, int map_id, int array_size, opennsl_qos_map_t *array, int *array_count) LIB_DLL_EXPORTED
 Get an entire QoS mapping for the given QoS Map ID.
 
void opennsl_qos_map_t_init (opennsl_qos_map_t *qos_map) LIB_DLL_EXPORTED
 Initialize the QoS Map structure.
 
int opennsl_qos_multi_get (int unit, int array_size, int *map_ids_array, int *flags_array, int *array_count) LIB_DLL_EXPORTED
 Get the list of all QoS Map IDs.
 
int opennsl_qos_port_map_get (int unit, opennsl_gport_t port, int *ing_map, int *egr_map) LIB_DLL_EXPORTED
 Retrieves the configured QoS mapping for the given GPORT.
 
int opennsl_qos_port_map_set (int unit, opennsl_gport_t port, int ing_map, int egr_map) LIB_DLL_EXPORTED
 Associates a GPORT with a QoS map.
 
int opennsl_qos_port_map_type_get (int unit, opennsl_gport_t port, uint32 flags, int *map_id) LIB_DLL_EXPORTED
 Retrieves the configured QoS mapping matching a type for the given GPORT.
 
int opennsl_qos_port_vlan_map_get (int unit, opennsl_port_t port, opennsl_vlan_t vid, int *ing_map, int *egr_map) LIB_DLL_EXPORTED
 Get the QoS map ID for a port, vid.
 
int opennsl_qos_port_vlan_map_set (int unit, opennsl_port_t port, opennsl_vlan_t vid, int ing_map, int egr_map) LIB_DLL_EXPORTED
 Associate a port, vid with an ingress and egress QoS mapping.