|
OpenNSL API Guide and Reference Manual
|
Data Structures | |
| struct | opennsl_qos_map_s |
| QoS Map structure. More... | |
Files | |
| file | qos.h |
| file | qosX.h |
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. | |
| #define OPENNSL_QOS_MAP_EGRESS 0x0800 |
Definition at line 35 of file qosX.h.
Referenced by qos_map_l2_eg_dft_profile().
| #define OPENNSL_QOS_MAP_IPV4 OPENNSL_QOS_MAP_L3 |
| #define OPENNSL_QOS_MAP_L2 0x0004 |
Definition at line 25 of file qosX.h.
Referenced by qos_map_l2_eg_dft_profile().
| #define OPENNSL_QOS_MAP_L2_OUTER_TAG OPENNSL_QOS_MAP_L2 |
Definition at line 26 of file qosX.h.
Referenced by qos_map_l2_eg_dft_profile().
| #define OPENNSL_QOS_MAP_L2_UNTAGGED 0x0010 |
Definition at line 28 of file qosX.h.
Referenced by qos_map_l2_eg_dft_profile().
| #define OPENNSL_QOS_MAP_L2_VLAN_PCP 0x0020 |
Definition at line 29 of file qosX.h.
Referenced by qos_map_l2_eg_dft_profile().
| typedef struct opennsl_qos_map_s opennsl_qos_map_t |
QoS Map structure.
| int opennsl_qos_map_add | ( | int | unit, |
| uint32 | flags, | ||
| opennsl_qos_map_t * | map, | ||
| int | map_id | ||
| ) |
Add a specific mapping entry to a QoS map.
| unit | [IN] Unit number. |
| flags | [IN] Configuration flags |
| map | [IN] Pointer to a opennsl_qos_map_t structure |
| map_id | [IN] QoS map ID |
| OPENNSL_E_INIT,OPENNSL_E_PARAM,OPENNSL_E_RESOURCE,OPENNSL_E_NONE |
Referenced by qos_map_l2_eg_dft_profile().
| int opennsl_qos_map_create | ( | int | unit, |
| uint32 | flags, | ||
| int * | map_id | ||
| ) |
Allocates hardware resources for QoS mapping.
| unit | [IN] Unit number. |
| flags | [IN] Configuration flags |
| map_id | [IN,OUT] QoS map ID |
| OPENNSL_E_XXX |
Referenced by qos_map_l2_eg_dft_profile().
| int opennsl_qos_map_delete | ( | int | unit, |
| uint32 | flags, | ||
| opennsl_qos_map_t * | map, | ||
| int | map_id | ||
| ) |
Deletes a specific mapping entry from a QoS map.
| unit | [IN] Unit number. |
| flags | [IN] Configuration flags |
| map | [IN] Pointer to a opennsl_qos_map_t structure |
| map_id | [IN] QoS map ID |
| OPENNSL_E_XXX |
| int opennsl_qos_map_destroy | ( | int | unit, |
| int | map_id | ||
| ) |
Frees hardware resources for QoS mapping.
| unit | [IN] Unit number. |
| map_id | [IN] QoS map ID |
| OPENNSL_E_XXX |
Referenced by initial_qos_service_cleanup().
| int opennsl_qos_map_multi_get | ( | int | unit, |
| uint32 | flags, | ||
| int | map_id, | ||
| int | array_size, | ||
| opennsl_qos_map_t * | array, | ||
| int * | array_count | ||
| ) |
Get an entire QoS mapping for the given QoS Map ID.
| unit | [IN] Unit number. |
| flags | [IN] Configuration flags |
| map_id | [IN] QoS map ID |
| array_size | [IN] Number of elements in array parameter; 0 to query |
| array | [OUT] Number of elements in array parameter; 0 to query |
| array_count | [OUT] Number of mappings retrieved |
| OPENNSL_E_xxx |
| void opennsl_qos_map_t_init | ( | opennsl_qos_map_t * | qos_map | ) |
Initialize the QoS Map structure.
| qos_map | [IN,OUT] Pointer to a QoS map structure. |
| Void |
Referenced by qos_map_l2_eg_dft_profile().
| int opennsl_qos_multi_get | ( | int | unit, |
| int | array_size, | ||
| int * | map_ids_array, | ||
| int * | flags_array, | ||
| int * | array_count | ||
| ) |
Get the list of all QoS Map IDs.
| unit | [IN] Unit number. |
| array_size | [IN] Number of elements in array parameter; 0 to query |
| map_ids_array | [OUT] Storage location for map ids |
| flags_array | [OUT] Storage location for flags associated with the maps |
| array_count | [OUT] Number of mappings retrieved |
| OPENNSL_E_xxx |
| int opennsl_qos_port_map_get | ( | int | unit, |
| opennsl_gport_t | port, | ||
| int * | ing_map, | ||
| int * | egr_map | ||
| ) |
Retrieves the configured QoS mapping for the given GPORT.
| unit | [IN] Unit number. |
| port | [IN] GPORT identifier |
| ing_map | [OUT] Ingress QoS map ID |
| egr_map | [OUT] Egress QoS map ID |
| OPENNSL_E_xxx |
| int opennsl_qos_port_map_set | ( | int | unit, |
| opennsl_gport_t | port, | ||
| int | ing_map, | ||
| int | egr_map | ||
| ) |
Associates a GPORT with a QoS map.
| unit | [IN] Unit number. |
| port | [IN] GPORT identifier |
| ing_map | [IN] Ingress QoS map ID |
| egr_map | [IN] Egress QoS map ID |
| OPENNSL_E_XXX |
| int opennsl_qos_port_map_type_get | ( | int | unit, |
| opennsl_gport_t | port, | ||
| uint32 | flags, | ||
| int * | map_id | ||
| ) |
Retrieves the configured QoS mapping matching a type for the given GPORT.
| unit | [IN] Unit number. |
| port | [IN] GPORT identifier |
| flags | [IN] Flags to specify the type |
| map_id | [OUT] Ingress QoS map ID |
| OPENNSL_E_xxx |
| int opennsl_qos_port_vlan_map_get | ( | int | unit, |
| opennsl_port_t | port, | ||
| opennsl_vlan_t | vid, | ||
| int * | ing_map, | ||
| int * | egr_map | ||
| ) |
Get the QoS map ID for a port, vid.
| unit | [IN] Unit number. |
| port | [IN] Port number |
| vid | [IN] VLAN Identifier |
| ing_map | [OUT] Ingress QoS map ID |
| egr_map | [OUT] Egress QoS map ID |
| OPENNSL_E_xxx |
| int opennsl_qos_port_vlan_map_set | ( | int | unit, |
| opennsl_port_t | port, | ||
| opennsl_vlan_t | vid, | ||
| int | ing_map, | ||
| int | egr_map | ||
| ) |
Associate a port, vid with an ingress and egress QoS mapping.
| unit | [IN] Unit number. |
| port | [IN] Port number |
| vid | [IN] VLAN Identifier |
| ing_map | [IN] Ingress QoS map ID. 0 to clear, -1 to preserve |
| egr_map | [IN] Egress QoS map ID. 0 to clear, -1 to preserve |
| OPENNSL_E_xxx |