SAI Metadata
|
Classes | |
struct | _sai_switch_api_t |
Switch method table retrieved with sai_api_query() More... | |
Macros | |
#define | SAI_MAX_HARDWARE_ID_LEN 255 |
Maximum Hardware ID Length. | |
#define | SAI_MAX_FIRMWARE_PATH_NAME_LEN PATH_MAX |
Maximum Firmware Path Name Length. | |
#define | SAI_SWITCH_ATTR_MAX_KEY_STRING_LEN 64 |
#define | SAI_SWITCH_ATTR_MAX_KEY_COUNT 16 |
#define | SAI_KEY_FDB_TABLE_SIZE "SAI_FDB_TABLE_SIZE" |
#define | SAI_KEY_L3_ROUTE_TABLE_SIZE "SAI_L3_ROUTE_TABLE_SIZE" |
#define | SAI_KEY_L3_NEIGHBOR_TABLE_SIZE "SAI_L3_NEIGHBOR_TABLE_SIZE" |
#define | SAI_KEY_NUM_LAG_MEMBERS "SAI_NUM_LAG_MEMBERS" |
#define | SAI_KEY_NUM_LAGS "SAI_NUM_LAGS" |
#define | SAI_KEY_NUM_ECMP_MEMBERS "SAI_NUM_ECMP_MEMBERS" |
#define | SAI_KEY_NUM_ECMP_GROUPS "SAI_NUM_ECMP_GROUPS" |
#define | SAI_KEY_NUM_UNICAST_QUEUES "SAI_NUM_UNICAST_QUEUES" |
#define | SAI_KEY_NUM_MULTICAST_QUEUES "SAI_NUM_MULTICAST_QUEUES" |
#define | SAI_KEY_NUM_QUEUES "SAI_NUM_QUEUES" |
#define | SAI_KEY_NUM_CPU_QUEUES "SAI_NUM_CPU_QUEUES" |
#define | SAI_KEY_INIT_CONFIG_FILE "SAI_INIT_CONFIG_FILE" |
#define | SAI_KEY_BOOT_TYPE "SAI_BOOT_TYPE" |
#define | SAI_KEY_WARM_BOOT_READ_FILE "SAI_WARM_BOOT_READ_FILE" |
#define | SAI_KEY_WARM_BOOT_WRITE_FILE "SAI_WARM_BOOT_WRITE_FILE" |
#define | SAI_KEY_HW_PORT_PROFILE_ID_CONFIG_FILE "SAI_HW_PORT_PROFILE_ID_CONFIG_FILE" |
Typedefs | |
typedef enum _sai_switch_oper_status_t | sai_switch_oper_status_t |
Attribute data for SAI_SWITCH_ATTR_OPER_STATUS. | |
typedef enum _sai_packet_action_t | sai_packet_action_t |
Attribute data for packet action. | |
typedef enum _sai_packet_vlan_t | sai_packet_vlan_t |
Attribute data for number of vlan tags present in a packet. | |
typedef enum _sai_switch_switching_mode_t | sai_switch_switching_mode_t |
Attribute data for SAI_SWITCH_ATTR_SWITCHING_MODE. | |
typedef enum _sai_hash_algorithm_t | sai_hash_algorithm_t |
Attribute data for SAI_SWITCH_ATTR_ECMP_DEFAULT_HASH_ALGORITHM and SAI_SWITCH_ATTR_LAG_DEFAULT_HASH_ALGORITHM. | |
typedef enum _sai_switch_restart_type_t | sai_switch_restart_type_t |
Attribute data for SAI_SWITCH_ATTR_RESTART_TYPE. | |
typedef enum _sai_switch_mcast_snooping_capability_t | sai_switch_mcast_snooping_capability_t |
Attribute data for SAI_SWITCH_ATTR_MCAST_SNOOPING_CAPABILITY. | |
typedef enum _sai_switch_hardware_access_bus_t | sai_switch_hardware_access_bus_t |
Attribute data for SAI_SWITCH_ATTR_HARDWARE_ACCESS_BUS. | |
typedef enum _sai_switch_firmware_load_method_t | sai_switch_firmware_load_method_t |
Attribute data for SAI_SWITCH_ATTR_FIRMWARE_LOAD_METHOD. | |
typedef enum _sai_switch_firmware_load_type_t | sai_switch_firmware_load_type_t |
Attribute data for SAI_SWITCH_ATTR_FIRMWARE_LOAD_TYPE. | |
typedef enum _sai_switch_type_t | sai_switch_type_t |
Attribute data for SAI_SWITCH_ATTR_TYPE. | |
typedef enum _sai_switch_failover_config_mode_t | sai_switch_failover_config_mode_t |
Attribute data for SAI_SWITCH_ATTR_FAILOVER_CONFIG_MODE Used for Failover configuration mode In case of primary port failure, hitless enables the switch over to secondary port without losing link. It allows uninterrupted data transmission. | |
typedef enum _sai_tunnel_type_t | sai_tunnel_type_t |
Defines tunnel type. | |
typedef enum _sai_tunnel_vxlan_udp_sport_mode_t | sai_tunnel_vxlan_udp_sport_mode_t |
Defines VXLAN tunnel UDP source port mode. | |
typedef enum _sai_tunnel_encap_ecn_mode_t | sai_tunnel_encap_ecn_mode_t |
Defines tunnel encap ECN mode. | |
typedef enum _sai_tunnel_decap_ecn_mode_t | sai_tunnel_decap_ecn_mode_t |
Defines tunnel decap ECN mode. | |
typedef enum _sai_switch_tunnel_attr_t | sai_switch_tunnel_attr_t |
Defines tunnel attributes at switch level. SAI_OBJECT_TYPE_SWITCH_TUNNEL object provides per tunnel type global configuration. SAI_OBJECT_TYPE_TUNNEL object configuration overrides the switch scoped global configuration. | |
typedef enum _sai_switch_hostif_oper_status_update_mode_t | sai_switch_hostif_oper_status_update_mode_t |
Attribute data for SAI_SWITCH_ATTR_HOSTIF_OPER_STATUS_UPDATE_MODE. | |
typedef enum _sai_switch_attr_t | sai_switch_attr_t |
Attribute Id in sai_set_switch_attribute() and sai_get_switch_attribute() calls. | |
typedef enum _sai_switch_asic_sdk_health_severity_t | sai_switch_asic_sdk_health_severity_t |
Switch health event severity. | |
typedef enum _sai_switch_asic_sdk_health_category_t | sai_switch_asic_sdk_health_category_t |
Switch health categories. | |
typedef enum _sai_switch_stat_t | sai_switch_stat_t |
Switch counter IDs in sai_get_switch_stats() call. | |
typedef void(* | sai_switch_asic_sdk_health_event_notification_fn) (_In_ sai_object_id_t switch_id, _In_ sai_switch_asic_sdk_health_severity_t severity, _In_ sai_timespec_t timestamp, _In_ sai_switch_asic_sdk_health_category_t category, _In_ sai_switch_health_data_t data, _In_ const sai_u8_list_t description) |
Switch health event callback. | |
typedef void(* | sai_switch_shutdown_request_notification_fn) (_In_ sai_object_id_t switch_id) |
Switch shutdown request callback. | |
typedef void(* | sai_switch_state_change_notification_fn) (_In_ sai_object_id_t switch_id, _In_ sai_switch_oper_status_t switch_oper_status) |
Switch operational state change notification. | |
typedef sai_status_t(* | sai_switch_register_read_fn) (_In_ uint64_t platform_context, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _Out_ uint32_t *reg_val) |
Platform specific device register read access. | |
typedef sai_status_t(* | sai_switch_register_write_fn) (_In_ uint64_t platform_context, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _In_ const uint32_t *reg_val) |
Platform specific device register write access. | |
typedef sai_status_t(* | sai_switch_mdio_read_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _Out_ uint32_t *reg_val) |
Switch MDIO read API. | |
typedef sai_status_t(* | sai_switch_mdio_write_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _In_ const uint32_t *reg_val) |
Switch MDIO write API. | |
typedef sai_status_t(* | sai_switch_mdio_cl22_read_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _Out_ uint32_t *reg_val) |
Switch MDIO clause 22 read API. | |
typedef sai_status_t(* | sai_switch_mdio_cl22_write_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _In_ const uint32_t *reg_val) |
Switch MDIO clause write API. | |
typedef sai_status_t(* | sai_create_switch_fn) (_Out_ sai_object_id_t *switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create switch. | |
typedef sai_status_t(* | sai_remove_switch_fn) (_In_ sai_object_id_t switch_id) |
Remove/disconnect Switch. | |
typedef sai_status_t(* | sai_set_switch_attribute_fn) (_In_ sai_object_id_t switch_id, _In_ const sai_attribute_t *attr) |
Set switch attribute value. | |
typedef sai_status_t(* | sai_get_switch_attribute_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get switch attribute value. | |
typedef sai_status_t(* | sai_get_switch_stats_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters) |
Get switch statistics counters. Deprecated for backward compatibility. | |
typedef sai_status_t(* | sai_get_switch_stats_ext_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _In_ sai_stats_mode_t mode, _Out_ uint64_t *counters) |
Get switch statistics counters extended. | |
typedef sai_status_t(* | sai_clear_switch_stats_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids) |
Clear switch statistics counters. | |
typedef sai_status_t(* | sai_create_switch_tunnel_fn) (_Out_ sai_object_id_t *switch_tunnel_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create switch scoped tunnel. | |
typedef sai_status_t(* | sai_remove_switch_tunnel_fn) (_In_ sai_object_id_t switch_tunnel_id) |
Remove/disconnect Switch scope tunnel. | |
typedef sai_status_t(* | sai_set_switch_tunnel_attribute_fn) (_In_ sai_object_id_t switch_tunnel_id, _In_ const sai_attribute_t *attr) |
Set switch scoped tunnel attribute value. | |
typedef sai_status_t(* | sai_get_switch_tunnel_attribute_fn) (_In_ sai_object_id_t switch_tunnel_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get switch scoped tunnel attribute value. | |
typedef struct _sai_switch_api_t | sai_switch_api_t |
Switch method table retrieved with sai_api_query() | |
#define SAI_KEY_BOOT_TYPE "SAI_BOOT_TYPE" |
0: cold boot. Initialize NPU and external phys. 1: warm boot. Do not re-initialize NPU or external phys, reconstruct SAI/SDK state from stored state. 2: fast boot. Only initialize NPU. SAI/SDK state should not be persisted except for those related to physical port attributes such as SPEED, AUTONEG mode, admin state, operational status.
Definition at line 3228 of file saiswitch.h.
#define SAI_KEY_FDB_TABLE_SIZE "SAI_FDB_TABLE_SIZE" |
Definition at line 3163 of file saiswitch.h.
#define SAI_KEY_HW_PORT_PROFILE_ID_CONFIG_FILE "SAI_HW_PORT_PROFILE_ID_CONFIG_FILE" |
Vendor specific Configuration file for Hardware Port Profile ID parameters. HW port profile ID can be used to set vendor specific port attributes based on the transceiver type plugged in to the port
Definition at line 3248 of file saiswitch.h.
#define SAI_KEY_INIT_CONFIG_FILE "SAI_INIT_CONFIG_FILE" |
Definition at line 3218 of file saiswitch.h.
#define SAI_KEY_L3_NEIGHBOR_TABLE_SIZE "SAI_L3_NEIGHBOR_TABLE_SIZE" |
Definition at line 3173 of file saiswitch.h.
#define SAI_KEY_L3_ROUTE_TABLE_SIZE "SAI_L3_ROUTE_TABLE_SIZE" |
Definition at line 3168 of file saiswitch.h.
#define SAI_KEY_NUM_CPU_QUEUES "SAI_NUM_CPU_QUEUES" |
Definition at line 3213 of file saiswitch.h.
#define SAI_KEY_NUM_ECMP_GROUPS "SAI_NUM_ECMP_GROUPS" |
Definition at line 3193 of file saiswitch.h.
#define SAI_KEY_NUM_ECMP_MEMBERS "SAI_NUM_ECMP_MEMBERS" |
Definition at line 3188 of file saiswitch.h.
#define SAI_KEY_NUM_LAG_MEMBERS "SAI_NUM_LAG_MEMBERS" |
Definition at line 3178 of file saiswitch.h.
#define SAI_KEY_NUM_LAGS "SAI_NUM_LAGS" |
Definition at line 3183 of file saiswitch.h.
#define SAI_KEY_NUM_MULTICAST_QUEUES "SAI_NUM_MULTICAST_QUEUES" |
Definition at line 3203 of file saiswitch.h.
#define SAI_KEY_NUM_QUEUES "SAI_NUM_QUEUES" |
Definition at line 3208 of file saiswitch.h.
#define SAI_KEY_NUM_UNICAST_QUEUES "SAI_NUM_UNICAST_QUEUES" |
Definition at line 3198 of file saiswitch.h.
#define SAI_KEY_WARM_BOOT_READ_FILE "SAI_WARM_BOOT_READ_FILE" |
The file to recover SAI/NPU state from
Definition at line 3234 of file saiswitch.h.
#define SAI_KEY_WARM_BOOT_WRITE_FILE "SAI_WARM_BOOT_WRITE_FILE" |
The file to write SAI/NPU state to
Definition at line 3240 of file saiswitch.h.
#define SAI_MAX_FIRMWARE_PATH_NAME_LEN PATH_MAX |
Maximum Firmware Path Name Length.
Definition at line 44 of file saiswitch.h.
#define SAI_MAX_HARDWARE_ID_LEN 255 |
Maximum Hardware ID Length.
Definition at line 39 of file saiswitch.h.
#define SAI_SWITCH_ATTR_MAX_KEY_COUNT 16 |
Maximum count of switch attribute keys
Definition at line 3154 of file saiswitch.h.
#define SAI_SWITCH_ATTR_MAX_KEY_STRING_LEN 64 |
Maximum length of switch attribute key string that can be set using key=value
Definition at line 3145 of file saiswitch.h.
typedef sai_status_t(* sai_clear_switch_stats_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids) |
Clear switch statistics counters.
[in] | switch_id | Switch id |
[in] | number_of_counters | Number of counters in the array |
[in] | counter_ids | Specifies the array of counter ids |
Definition at line 3534 of file saiswitch.h.
typedef sai_status_t(* sai_create_switch_fn) (_Out_ sai_object_id_t *switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create switch.
SDK initialization/connect to SDK. After the call the capability attributes should be ready for retrieval via sai_get_switch_attribute(). Same Switch Object id should be given for create/connect for each NPU.
[out] | switch_id | The Switch Object ID |
[in] | attr_count | Number of attributes |
[in] | attr_list | Array of attributes |
Definition at line 3448 of file saiswitch.h.
typedef sai_status_t(* sai_create_switch_tunnel_fn) (_Out_ sai_object_id_t *switch_tunnel_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list) |
Create switch scoped tunnel.
[out] | switch_tunnel_id | The Switch Tunnel Object ID |
[in] | switch_id | Switch id |
[in] | attr_count | Number of attributes |
[in] | attr_list | Array of attributes |
Definition at line 3549 of file saiswitch.h.
typedef sai_status_t(* sai_get_switch_attribute_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get switch attribute value.
[in] | switch_id | Switch id |
[in] | attr_count | Number of attributes |
[in,out] | attr_list | Array of switch attributes |
Definition at line 3486 of file saiswitch.h.
typedef sai_status_t(* sai_get_switch_stats_ext_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _In_ sai_stats_mode_t mode, _Out_ uint64_t *counters) |
Get switch statistics counters extended.
[in] | switch_id | Switch id |
[in] | number_of_counters | Number of counters in the array |
[in] | counter_ids | Specifies the array of counter ids |
[in] | mode | Statistics mode |
[out] | counters | Array of resulting counter values. |
Definition at line 3518 of file saiswitch.h.
typedef sai_status_t(* sai_get_switch_stats_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters) |
Get switch statistics counters. Deprecated for backward compatibility.
[in] | switch_id | Switch id |
[in] | number_of_counters | Number of counters in the array |
[in] | counter_ids | Specifies the array of counter ids |
[out] | counters | Array of resulting counter values. |
Definition at line 3501 of file saiswitch.h.
typedef sai_status_t(* sai_get_switch_tunnel_attribute_fn) (_In_ sai_object_id_t switch_tunnel_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list) |
Get switch scoped tunnel attribute value.
[in] | switch_tunnel_id | Switch Tunnel id |
[in] | attr_count | Number of attributes |
[in,out] | attr_list | Array of switch tunnel attributes |
Definition at line 3588 of file saiswitch.h.
typedef sai_status_t(* sai_remove_switch_fn) (_In_ sai_object_id_t switch_id) |
Remove/disconnect Switch.
Release all resources associated with currently opened switch
[in] | switch_id | The Switch id |
Definition at line 3462 of file saiswitch.h.
typedef sai_status_t(* sai_remove_switch_tunnel_fn) (_In_ sai_object_id_t switch_tunnel_id) |
Remove/disconnect Switch scope tunnel.
Release all resources associated with currently opened switch
[in] | switch_tunnel_id | The Switch Tunnel id |
Definition at line 3564 of file saiswitch.h.
typedef sai_status_t(* sai_set_switch_attribute_fn) (_In_ sai_object_id_t switch_id, _In_ const sai_attribute_t *attr) |
Set switch attribute value.
[in] | switch_id | Switch id |
[in] | attr | Switch attribute |
Definition at line 3473 of file saiswitch.h.
typedef sai_status_t(* sai_set_switch_tunnel_attribute_fn) (_In_ sai_object_id_t switch_tunnel_id, _In_ const sai_attribute_t *attr) |
Set switch scoped tunnel attribute value.
[in] | switch_tunnel_id | Switch Tunnel id |
[in] | attr | Switch tunnel attribute |
Definition at line 3575 of file saiswitch.h.
typedef void(* sai_switch_asic_sdk_health_event_notification_fn) (_In_ sai_object_id_t switch_id, _In_ sai_switch_asic_sdk_health_severity_t severity, _In_ sai_timespec_t timestamp, _In_ sai_switch_asic_sdk_health_category_t category, _In_ sai_switch_health_data_t data, _In_ const sai_u8_list_t description) |
Switch health event callback.
[in] | switch_id | Switch Id |
[in] | severity | Health event severity |
[in] | timestamp | Time and date of receiving the SDK Health event |
[in] | category | Category of cause |
[in] | data | Data of switch health |
[in] | description | JSON-encoded description string with information delivered from SDK event/trap Example of a possible description: { "switch_id": "0x00000000000000AB", "severity": "2", "timestamp": { "tv_sec": "22429", "tv_nsec": "3428724" }, "category": "3", "data": { data_type: "0" }, "additional_data": "Some additional information" } |
Definition at line 3276 of file saiswitch.h.
typedef sai_status_t(* sai_switch_mdio_cl22_read_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _Out_ uint32_t *reg_val) |
Switch MDIO clause 22 read API.
Provides clause 22 read access API for devices connected to MDIO from NPU SAI.
[in] | switch_id | Switch Id |
[in] | device_addr | Device address(PHY/lane/port MDIO address) |
[in] | start_reg_addr | Starting register address to read |
[in] | number_of_registers | Number of consecutive registers to read |
[out] | reg_val | Register read values |
Definition at line 3408 of file saiswitch.h.
typedef sai_status_t(* sai_switch_mdio_cl22_write_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _In_ const uint32_t *reg_val) |
Switch MDIO clause write API.
Provides clause 22 write access API for devices connected to MDIO from NPU SAI.
[in] | switch_id | Switch Id |
[in] | device_addr | Device address(PHY/lane/port MDIO address) |
[in] | start_reg_addr | Starting register address to write |
[in] | number_of_registers | Number of consecutive registers to write |
[in] | reg_val | Register write values |
Definition at line 3428 of file saiswitch.h.
typedef sai_status_t(* sai_switch_mdio_read_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _Out_ uint32_t *reg_val) |
Switch MDIO read API.
Provides read access API for devices connected to MDIO from NPU SAI.
[in] | switch_id | Switch Id |
[in] | device_addr | Device address(PHY/lane/port MDIO address) |
[in] | start_reg_addr | Starting register address to read |
[in] | number_of_registers | Number of consecutive registers to read |
[out] | reg_val | Register read values |
Definition at line 3368 of file saiswitch.h.
typedef sai_status_t(* sai_switch_mdio_write_fn) (_In_ sai_object_id_t switch_id, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _In_ const uint32_t *reg_val) |
Switch MDIO write API.
Provides write access API for devices connected to MDIO from NPU SAI.
[in] | switch_id | Switch Id |
[in] | device_addr | Device address(PHY/lane/port MDIO address) |
[in] | start_reg_addr | Starting register address to write |
[in] | number_of_registers | Number of consecutive registers to write |
[in] | reg_val | Register write values |
Definition at line 3388 of file saiswitch.h.
typedef sai_status_t(* sai_switch_register_read_fn) (_In_ uint64_t platform_context, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _Out_ uint32_t *reg_val) |
Platform specific device register read access.
This API provides platform adaption functionality to access device registers from driver. This is mandatory to pass as attribute to sai_create_switch when driver implementation does not support register access by device file system directly.
[in] | platform_context | Platform context information. |
[in] | device_addr | Device address(PHY/lane/port MDIO address) |
[in] | start_reg_addr | Starting register address to read |
[in] | number_of_registers | Number of consecutive registers to read |
[out] | reg_val | Register read values |
Definition at line 3325 of file saiswitch.h.
typedef sai_status_t(* sai_switch_register_write_fn) (_In_ uint64_t platform_context, _In_ uint32_t device_addr, _In_ uint32_t start_reg_addr, _In_ uint32_t number_of_registers, _In_ const uint32_t *reg_val) |
Platform specific device register write access.
This API provides platform adaption functionality to access device registers from driver. This is mandatory to pass as attribute to sai_create_switch when driver implementation does not support register access by device file system directly.
[in] | platform_context | Platform context information. |
[in] | device_addr | Device address(PHY/lane/port MDIO address) |
[in] | start_reg_addr | Starting register address to write |
[in] | number_of_registers | Number of consecutive registers to write |
[in] | reg_val | Register write values |
Definition at line 3348 of file saiswitch.h.
typedef void(* sai_switch_shutdown_request_notification_fn) (_In_ sai_object_id_t switch_id) |
Switch shutdown request callback.
Adapter DLL may request a shutdown due to an unrecoverable failure or a maintenance operation
[in] | switch_id | Switch Id |
Definition at line 3294 of file saiswitch.h.
typedef enum _sai_switch_stat_t sai_switch_stat_t |
Switch counter IDs in sai_get_switch_stats() call.
typedef void(* sai_switch_state_change_notification_fn) (_In_ sai_object_id_t switch_id, _In_ sai_switch_oper_status_t switch_oper_status) |
Switch operational state change notification.
[in] | switch_id | Switch Id |
[in] | switch_oper_status | New switch operational state |
Definition at line 3305 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_ECMP_DEFAULT_HASH_ALGORITHM and SAI_SWITCH_ATTR_LAG_DEFAULT_HASH_ALGORITHM.
Definition at line 188 of file saiswitch.h.
enum _sai_packet_action_t |
Attribute data for packet action.
Definition at line 68 of file saiswitch.h.
enum _sai_packet_vlan_t |
Attribute data for number of vlan tags present in a packet.
Definition at line 144 of file saiswitch.h.
Switch health categories.
Definition at line 3035 of file saiswitch.h.
Switch health event severity.
Definition at line 3019 of file saiswitch.h.
enum _sai_switch_attr_t |
Attribute Id in sai_set_switch_attribute() and sai_get_switch_attribute() calls.
Enumerator | |
---|---|
SAI_SWITCH_ATTR_START | Start of attributes. |
SAI_SWITCH_ATTR_NUMBER_OF_ACTIVE_PORTS | Number of active(created) ports on the switch.
|
SAI_SWITCH_ATTR_PORT_NUMBER |
|
SAI_SWITCH_ATTR_MAX_NUMBER_OF_SUPPORTED_PORTS | Maximum number of supported ports on the switch.
|
SAI_SWITCH_ATTR_PORT_LIST | Get the port list.
|
SAI_SWITCH_ATTR_PORT_MAX_MTU | Get the Max MTU in bytes, supported by the switch.
|
SAI_SWITCH_ATTR_CPU_PORT | Get the CPU Port.
|
SAI_SWITCH_ATTR_MAX_VIRTUAL_ROUTERS | Max number of virtual routers supported.
|
SAI_SWITCH_ATTR_FDB_TABLE_SIZE | The size of the FDB Table in bytes.
|
SAI_SWITCH_ATTR_L3_NEIGHBOR_TABLE_SIZE | The L3 Host Table size.
|
SAI_SWITCH_ATTR_L3_ROUTE_TABLE_SIZE | The L3 Route Table size.
|
SAI_SWITCH_ATTR_LAG_MEMBERS | Number of ports that can be part of a LAG.
|
SAI_SWITCH_ATTR_NUMBER_OF_LAGS | Number of LAGs that can be created.
|
SAI_SWITCH_ATTR_ECMP_MEMBERS | ECMP number of members per group. Default is 64
|
SAI_SWITCH_ATTR_NUMBER_OF_ECMP_GROUPS | ECMP number of group.
|
SAI_SWITCH_ATTR_NUMBER_OF_UNICAST_QUEUES | The number of Unicast queues per port.
|
SAI_SWITCH_ATTR_NUMBER_OF_MULTICAST_QUEUES | The number of Multicast queues per port.
|
SAI_SWITCH_ATTR_NUMBER_OF_QUEUES | The total number of queues per port.
|
SAI_SWITCH_ATTR_NUMBER_OF_CPU_QUEUES | The number of CPU queues.
|
SAI_SWITCH_ATTR_ON_LINK_ROUTE_SUPPORTED | Local subnet routing supported. Routes with next hop set to "on-link".
|
SAI_SWITCH_ATTR_OPER_STATUS | Operational state.
|
SAI_SWITCH_ATTR_MAX_NUMBER_OF_TEMP_SENSORS | Maximum number of temperature sensors available.
|
SAI_SWITCH_ATTR_TEMP_LIST | List of temperature readings from all sensors. Values in Celsius.
|
SAI_SWITCH_ATTR_MAX_TEMP | The current value of the maximum temperature retrieved from the switch sensors. Value in Celsius.
|
SAI_SWITCH_ATTR_AVERAGE_TEMP | The average of temperature readings over all sensors in the switch. Value in Celsius.
|
SAI_SWITCH_ATTR_ACL_TABLE_MINIMUM_PRIORITY | Minimum priority for ACL table.
|
SAI_SWITCH_ATTR_ACL_TABLE_MAXIMUM_PRIORITY | Maximum priority for ACL table.
|
SAI_SWITCH_ATTR_ACL_ENTRY_MINIMUM_PRIORITY | Minimum priority for ACL entry.
|
SAI_SWITCH_ATTR_ACL_ENTRY_MAXIMUM_PRIORITY | Maximum priority for ACL entry.
|
SAI_SWITCH_ATTR_ACL_TABLE_GROUP_MINIMUM_PRIORITY | Minimum priority for ACL table group.
|
SAI_SWITCH_ATTR_ACL_TABLE_GROUP_MAXIMUM_PRIORITY | Maximum priority for ACL table group.
|
SAI_SWITCH_ATTR_FDB_DST_USER_META_DATA_RANGE | FDB DST user-based meta data range.
|
SAI_SWITCH_ATTR_ROUTE_DST_USER_META_DATA_RANGE | Route DST Table user-based meta data range.
|
SAI_SWITCH_ATTR_NEIGHBOR_DST_USER_META_DATA_RANGE | Neighbor DST Table user-based meta data range.
|
SAI_SWITCH_ATTR_PORT_USER_META_DATA_RANGE | Port user-based meta data range.
|
SAI_SWITCH_ATTR_VLAN_USER_META_DATA_RANGE | VLAN user-based meta data range.
|
SAI_SWITCH_ATTR_ACL_USER_META_DATA_RANGE | ACL user-based ACL meta data range.
|
SAI_SWITCH_ATTR_ACL_USER_TRAP_ID_RANGE | ACL user-based trap id range.
|
SAI_SWITCH_ATTR_DEFAULT_VLAN_ID | Default SAI VLAN ID.
|
SAI_SWITCH_ATTR_DEFAULT_STP_INST_ID | Default SAI STP instance ID.
|
SAI_SWITCH_ATTR_MAX_STP_INSTANCE | Max number of STP instances that NPU supports.
|
SAI_SWITCH_ATTR_DEFAULT_VIRTUAL_ROUTER_ID | Default SAI Virtual Router ID. Must return SAI_STATUS_OBJECT_IN_USE when try to delete this VR ID.
|
SAI_SWITCH_ATTR_DEFAULT_OVERRIDE_VIRTUAL_ROUTER_ID | Default SAI Override Virtual Router ID. Must return SAI_STATUS_OBJECT_IN_USE when try to delete this VR ID.
|
SAI_SWITCH_ATTR_DEFAULT_1Q_BRIDGE_ID | Default .1Q Bridge ID.
|
SAI_SWITCH_ATTR_INGRESS_ACL | Switch/Global bind point for ingress ACL object. Bind (or unbind) an ingress ACL table or ACL group globally. Enable/Update ingress ACL table or ACL group filtering by assigning a valid object id. Disable ingress filtering by assigning SAI_NULL_OBJECT_ID in the attribute value.
|
SAI_SWITCH_ATTR_EGRESS_ACL | Switch/Global bind point for egress ACL object. Bind (or unbind) an egress ACL tables or ACL group globally. Enable/Update egress ACL table or ACL group filtering by assigning a valid object id. Disable egress filtering by assigning SAI_NULL_OBJECT_ID in the attribute value.
|
SAI_SWITCH_ATTR_QOS_MAX_NUMBER_OF_TRAFFIC_CLASSES | Maximum traffic classes limit.
|
SAI_SWITCH_ATTR_QOS_MAX_NUMBER_OF_SCHEDULER_GROUP_HIERARCHY_LEVELS | HQOS - Maximum Number of Hierarchy scheduler group levels(depth) supported.
|
SAI_SWITCH_ATTR_QOS_MAX_NUMBER_OF_SCHEDULER_GROUPS_PER_HIERARCHY_LEVEL | HQOS - Maximum number of scheduler groups supported on each Hierarchy level.
|
SAI_SWITCH_ATTR_QOS_MAX_NUMBER_OF_CHILDS_PER_SCHEDULER_GROUP | HQOS - Maximum number of childs supported per scheduler group.
|
SAI_SWITCH_ATTR_TOTAL_BUFFER_SIZE | Switch total buffer size in KB.
|
SAI_SWITCH_ATTR_INGRESS_BUFFER_POOL_NUM | Switch number of ingress buffer pool.
|
SAI_SWITCH_ATTR_EGRESS_BUFFER_POOL_NUM | Switch number of egress buffer pool.
|
SAI_SWITCH_ATTR_AVAILABLE_IPV4_ROUTE_ENTRY | Available IPv4 routes.
|
SAI_SWITCH_ATTR_AVAILABLE_IPV6_ROUTE_ENTRY | Available IPv6 routes.
|
SAI_SWITCH_ATTR_AVAILABLE_IPV4_NEXTHOP_ENTRY | Available IPv4 Nexthop entries.
|
SAI_SWITCH_ATTR_AVAILABLE_IPV6_NEXTHOP_ENTRY | Available IPv6 Nexthop entries.
|
SAI_SWITCH_ATTR_AVAILABLE_IPV4_NEIGHBOR_ENTRY | Available IPv4 Neighbor entries.
|
SAI_SWITCH_ATTR_AVAILABLE_IPV6_NEIGHBOR_ENTRY | Available IPv6 Neighbor entries.
|
SAI_SWITCH_ATTR_AVAILABLE_NEXT_HOP_GROUP_ENTRY | Available Next hop group entries.
|
SAI_SWITCH_ATTR_AVAILABLE_NEXT_HOP_GROUP_MEMBER_ENTRY | Available Next hop group member entries.
|
SAI_SWITCH_ATTR_AVAILABLE_FDB_ENTRY | Available FDB entries.
|
SAI_SWITCH_ATTR_AVAILABLE_L2MC_ENTRY | Available L2MC entries.
|
SAI_SWITCH_ATTR_AVAILABLE_IPMC_ENTRY | Available IPMC entries.
|
SAI_SWITCH_ATTR_AVAILABLE_SNAT_ENTRY | Available SNAT entries.
|
SAI_SWITCH_ATTR_AVAILABLE_DNAT_ENTRY | Available DNAT entries.
|
SAI_SWITCH_ATTR_AVAILABLE_DOUBLE_NAT_ENTRY | Available Double NAT entries.
|
SAI_SWITCH_ATTR_AVAILABLE_ACL_TABLE | Available ACL Tables.
|
SAI_SWITCH_ATTR_AVAILABLE_ACL_TABLE_GROUP | Available ACL Table groups.
|
SAI_SWITCH_ATTR_AVAILABLE_MY_SID_ENTRY | Available My SID entries.
|
SAI_SWITCH_ATTR_DEFAULT_TRAP_GROUP | Default trap group. Default value after switch initialization: SAI_HOSTIF_TRAP_GROUP_ATTR_ADMIN_STATE = true SAI_HOSTIF_TRAP_GROUP_ATTR_PRIO = SAI_SWITCH_ATTR_ACL_TABLE_MINIMUM_PRIORITY SAI_HOSTIF_TRAP_GROUP_ATTR_QUEUE = 0 SAI_HOSTIF_TRAP_GROUP_ATTR_POLICER = SAI_NULL_OBJECT_ID The group handle is read only, while the group attributes, such as queue and policer, may be modified.
|
SAI_SWITCH_ATTR_ECMP_HASH | The hash object for packets going through ECMP. Default value after switch initialization: SAI_HASH_ATTR_NATIVE_HASH_FIELD_LIST = [SAI_NATIVE_HASH_FIELD_SRC_MAC, SAI_NATIVE_HASH_FIELD_DST_MAC, SAI_NATIVE_HASH_FIELD_IN_PORT, SAI_NATIVE_HASH_FIELD_ETHERTYPE] SAI_HASH_ATTR_UDF_GROUP_LIST empty list The object id is read only, while the object attributes can be modified.
|
SAI_SWITCH_ATTR_LAG_HASH | The hash object for packets going through LAG. Default value after switch initialization: SAI_HASH_ATTR_NATIVE_HASH_FIELD_LIST = [SAI_NATIVE_HASH_FIELD_SRC_MAC, SAI_NATIVE_HASH_FIELD_DST_MAC, SAI_NATIVE_HASH_FIELD_IN_PORT, SAI_NATIVE_HASH_FIELD_ETHERTYPE] SAI_HASH_ATTR_UDF_GROUP_LIST empty list) The object id is read only, while the object attributes can be modified.
|
SAI_SWITCH_ATTR_RESTART_WARM | Set Type of reboot WARM/COLD. Indicates controlled warm restart. Since warm restart can be caused by crash (therefore there are no guarantees for this call), this hint is really a performance optimization. This hint is set as part of the shutdown sequence, before boot. TRUE - Warm Reboot FALSE - Cold Reboot
|
SAI_SWITCH_ATTR_WARM_RECOVER | Warm boot recovery. Start warm boot recovery when set to true This hint is set after boot. In case of host adapter restart, host adapter can pass boot type in SAI_KEY_BOOT_TYPE. In case of host adapter recovery, host adapter can pass a hint about the boot type and recovery, in this flag.
|
SAI_SWITCH_ATTR_RESTART_TYPE | Type of restart supported.
|
SAI_SWITCH_ATTR_MIN_PLANNED_RESTART_INTERVAL | Minimum interval of time required by SAI for planned restart in milliseconds. Will be 0 for SAI_SWITCH_RESTART_TYPE_NONE. The Host Adapter will have to wait for this minimum interval of time before it decides to bring down SAI due to initialize failure.
|
SAI_SWITCH_ATTR_NV_STORAGE_SIZE | Nonvolatile storage required by both SAI and NPU in KB. Will be 0 for SAI_SWITCH_RESTART_TYPE_NONE.
|
SAI_SWITCH_ATTR_MAX_ACL_ACTION_COUNT | Count of the total number of actions supported by NPU.
|
SAI_SWITCH_ATTR_MAX_ACL_RANGE_COUNT | Count of the total number of ranges supported by NPU.
|
SAI_SWITCH_ATTR_ACL_CAPABILITY | ACL capabilities supported by the NPU.
|
SAI_SWITCH_ATTR_MCAST_SNOOPING_CAPABILITY | Multicast snooping capability supported by the NPU.
|
SAI_SWITCH_ATTR_SWITCHING_MODE | Switching mode.
|
SAI_SWITCH_ATTR_BCAST_CPU_FLOOD_ENABLE | L2 broadcast flood control to CPU port.
|
SAI_SWITCH_ATTR_MCAST_CPU_FLOOD_ENABLE | L2 multicast flood control to CPU port.
|
SAI_SWITCH_ATTR_SRC_MAC_ADDRESS | Default switch MAC Address.
|
SAI_SWITCH_ATTR_MAX_LEARNED_ADDRESSES | Maximum number of learned MAC addresses. Zero means learning limit is disabled.
|
SAI_SWITCH_ATTR_FDB_AGING_TIME | Dynamic FDB entry aging time in seconds. Zero means aging is disabled.
|
SAI_SWITCH_ATTR_FDB_UNICAST_MISS_PACKET_ACTION | Flood control for packets with unknown destination address.
|
SAI_SWITCH_ATTR_FDB_BROADCAST_MISS_PACKET_ACTION | Broadcast miss action.
|
SAI_SWITCH_ATTR_FDB_MULTICAST_MISS_PACKET_ACTION | Multicast miss action.
|
SAI_SWITCH_ATTR_ECMP_DEFAULT_HASH_ALGORITHM | SAI ECMP default hash algorithm.
|
SAI_SWITCH_ATTR_ECMP_DEFAULT_HASH_SEED | SAI ECMP default hash seed.
|
SAI_SWITCH_ATTR_ECMP_DEFAULT_HASH_OFFSET | SAI ECMP default hash offset. When set, the output of the ECMP hash calculation will be rotated right by the specified number of bits.
|
SAI_SWITCH_ATTR_ECMP_DEFAULT_SYMMETRIC_HASH | SAI ECMP default symmetric hash. When set, the hash calculation will result in the same value as when the source and destination addresses (L2 src/dst MAC,L3 src/dst IP,L4 src/dst port) were swapped, ensuring the same conversation will result in the same hash value.
|
SAI_SWITCH_ATTR_ECMP_HASH_IPV4 | The hash object for IPv4 packets going through ECMP.
|
SAI_SWITCH_ATTR_ECMP_HASH_IPV4_IN_IPV4 | The hash object for IPv4 in IPv4 packets going through ECMP.
|
SAI_SWITCH_ATTR_ECMP_HASH_IPV6 | The hash object for IPv6 packets going through ECMP.
|
SAI_SWITCH_ATTR_LAG_DEFAULT_HASH_ALGORITHM | SAI LAG default hash algorithm.
|
SAI_SWITCH_ATTR_LAG_DEFAULT_HASH_SEED | SAI LAG default hash seed.
|
SAI_SWITCH_ATTR_LAG_DEFAULT_HASH_OFFSET | SAI LAG default hash offset. When set, the output of the LAG hash calculation will be rotated right by the specified number of bits.
|
SAI_SWITCH_ATTR_LAG_DEFAULT_SYMMETRIC_HASH | SAI LAG default symmetric hash. When set, the hash calculation will result in the same value as when the source and destination addresses (L2 src/dst MAC,L3 src/dst IP,L4 src/dst port) were swapped, ensuring the same conversation will result in the same hash value.
|
SAI_SWITCH_ATTR_LAG_HASH_IPV4 | The hash object for IPv4 packets going through LAG.
|
SAI_SWITCH_ATTR_LAG_HASH_IPV4_IN_IPV4 | The hash object for IPv4 in IPv4 packets going through LAG.
|
SAI_SWITCH_ATTR_LAG_HASH_IPV6 | The hash object for IPv6 packets going through LAG.
|
SAI_SWITCH_ATTR_COUNTER_REFRESH_INTERVAL | Refresh interval.
1 - Read the counters directly from HW (or) 2 - Cache the counters in SW. Caching is typically done if retrieval of counters directly from HW for each counter read is CPU intensive This setting can be used to 1 - Move from HW based to SW based or Vice versa 2 - Configure the SW counter cache refresh rate Setting a value of 0 enables direct HW based counter read. A non zero value enables the SW cache based and the counter refresh rate. A NPU may support both or one of the option. It would return error for unsupported options Default - 1 sec (SW counter cache)
|
SAI_SWITCH_ATTR_QOS_DEFAULT_TC | Default Traffic class value.
|
SAI_SWITCH_ATTR_QOS_DOT1P_TO_TC_MAP | Enable DOT1P -> TC MAP on switch. MAP id = SAI_NULL_OBJECT_ID to disable map on switch. To enable/disable trust Dot1p, Map ID should be added/removed on switch. Default disabled.
|
SAI_SWITCH_ATTR_QOS_DOT1P_TO_COLOR_MAP | Enable DOT1P -> COLOR MAP on switch. MAP id = SAI_NULL_OBJECT_ID to disable map on switch. To enable/disable trust Dot1p, Map ID should be added/removed on switch. Default disabled.
|
SAI_SWITCH_ATTR_QOS_DSCP_TO_TC_MAP | Enable DSCP -> TC MAP on switch. MAP id = SAI_NULL_OBJECT_ID to disable map on switch. To enable/disable trust DSCP, Map ID should be added/removed on switch. Default no map.
|
SAI_SWITCH_ATTR_QOS_DSCP_TO_COLOR_MAP | Enable DSCP -> COLOR MAP on switch. MAP id = SAI_NULL_OBJECT_ID to disable map on switch. To enable/disable trust DSCP, Map ID should be added/removed on switch. Default no map.
|
SAI_SWITCH_ATTR_QOS_TC_TO_QUEUE_MAP | Enable TC -> Queue MAP on switch. Map id = SAI_NULL_OBJECT_ID to disable map on switch. Default no map i.e All packets to queue 0.
|
SAI_SWITCH_ATTR_QOS_TC_AND_COLOR_TO_DOT1P_MAP | Enable TC + COLOR -> DOT1P MAP. Map id = SAI_NULL_OBJECT_ID to disable map on switch. Default no map
|
SAI_SWITCH_ATTR_QOS_TC_AND_COLOR_TO_DSCP_MAP | Enable TC + COLOR -> DSCP MAP. Map id = SAI_NULL_OBJECT_ID to disable map on switch. Default no map.
|
SAI_SWITCH_ATTR_SWITCH_SHELL_ENABLE | Enable vendor specific switch shell.
|
SAI_SWITCH_ATTR_SWITCH_PROFILE_ID | Handle for switch profile id. Use this to retrieve the Key-Value pairs as part of switch initialization.
|
SAI_SWITCH_ATTR_SWITCH_HARDWARE_INFO | Device Information for switch initialization. Hardware information format is based on SAI implementations by vendors. String is NULL terminated. Format is vendor specific. Example: Like PCI location, I2C address, MDIO address, MDIO bus SysFS information etc. In case of NULL, First NPU attached to CPU will be initialized. For the MDIO SysFS driver support, the interface name and phy_id should be set and separated by "/", which should be formatted as {interface_name}/{phy_id} Single NPU case this attribute is optional.
|
SAI_SWITCH_ATTR_FIRMWARE_PATH_NAME | Vendor specific path name of the firmware to load.
|
SAI_SWITCH_ATTR_INIT_SWITCH | Set to switch initialization or connect to NPU/SDK. TRUE - Initialize switch/SDK. FALSE - Connect to SDK. This will connect library to the initialized SDK. After this call the capability attributes should be ready for retrieval via sai_get_switch_attribute()
|
SAI_SWITCH_ATTR_SWITCH_STATE_CHANGE_NOTIFY | Operational status change notification callback function passed to the adapter. Use sai_switch_state_change_notification_fn as notification function.
|
SAI_SWITCH_ATTR_SWITCH_SHUTDOWN_REQUEST_NOTIFY | Shutdown notification callback function passed to the adapter. Use sai_switch_shutdown_request_notification_fn as notification function.
|
SAI_SWITCH_ATTR_SHUTDOWN_REQUEST_NOTIFY |
|
SAI_SWITCH_ATTR_FDB_EVENT_NOTIFY | FDB event notification callback function passed to the adapter. Use sai_fdb_event_notification_fn as notification function.
|
SAI_SWITCH_ATTR_PORT_STATE_CHANGE_NOTIFY | Port state change notification callback function passed to the adapter. In case driver does not support this attribute, The Host adapter should poll port status by SAI_PORT_ATTR_OPER_STATUS. Use sai_port_state_change_notification_fn as notification function.
|
SAI_SWITCH_ATTR_PACKET_EVENT_NOTIFY | Received packet event notification callback function passed to the adapter. Use sai_packet_event_notification_fn as notification function.
|
SAI_SWITCH_ATTR_FAST_API_ENABLE | Enable SAI function call fast mode, which executes calls very quickly.
|
SAI_SWITCH_ATTR_MIRROR_TC | Set TC of mirrored packets. This setting will apply to all mirror sessions. Default of 255 = disabled. When this attribute is disabled, the TC of the mirrored frame will be derived from the packet (the DOT1P priority in the VLAN Tag, for example).
|
SAI_SWITCH_ATTR_ACL_STAGE_INGRESS | Ingress ACL stage.
|
SAI_SWITCH_ATTR_ACL_STAGE_EGRESS | Egress ACL stage.
|
SAI_SWITCH_ATTR_SRV6_MAX_SID_DEPTH | Max number of Segments supported in a single SRV6 SID List.
|
SAI_SWITCH_ATTR_SRV6_TLV_TYPE | List of Type Length Value types supported for source.
|
SAI_SWITCH_ATTR_QOS_NUM_LOSSLESS_QUEUES | The number of lossless queues per port supported by the switch.
|
SAI_SWITCH_ATTR_QUEUE_PFC_DEADLOCK_NOTIFY | Set Switch PFC deadlock event notification callback function passed to the adapter. Use sai_queue_pfc_deadlock_notification_fn as notification function.
|
SAI_SWITCH_ATTR_PFC_DLR_PACKET_ACTION | Control for buffered and incoming packets on queue undergoing PFC Deadlock Recovery. This control applies to all packets on all applicable port/queues. If application wants finer packet action control on per port per queue level then it is expected to set this control to packet forward and install one or more ACL and enable/disable them in the DLD/DLR event callback (SAI_SWITCH_ATTR_PFC_DEADLOCK_EVENT_NOTIFY) respectively.
|
SAI_SWITCH_ATTR_PFC_TC_DLD_INTERVAL_RANGE | PFC Deadlock Detection timer interval range.
|
SAI_SWITCH_ATTR_PFC_TC_DLD_INTERVAL | PFC Deadlock Detection timer interval in milliseconds. If the monitored queue is in XOFF state for more than this duration then its considered to be in a PFC deadlock state and recovery process is kicked off. Note: Use TC (Traffic Class) value as key and timer interval as value.
|
SAI_SWITCH_ATTR_PFC_TC_DLR_INTERVAL_RANGE | PFC Deadlock Recovery timer interval range.
|
SAI_SWITCH_ATTR_PFC_TC_DLR_INTERVAL | PFC Deadlock Recovery timer interval in milliseconds. The PFC deadlock recovery process will run for this amount of time and then normal state will resume. If the system remains in a deadlock state then the detection and recovery will resume again after the configured detection timer interval. Note: Use TC (Traffic Class) value as key and timer interval as value.
|
SAI_SWITCH_ATTR_SUPPORTED_PROTECTED_OBJECT_TYPE | Get the list of supported protected object types. See comment for SAI_NEXT_HOP_GROUP_MEMBER_ATTR_MONITORED_OBJECT for more details.
|
SAI_SWITCH_ATTR_TPID_OUTER_VLAN | TPID for Outer vlan id.
|
SAI_SWITCH_ATTR_TPID_INNER_VLAN | TPID for Inner vlan id.
|
SAI_SWITCH_ATTR_CRC_CHECK_ENABLE | Perform CRC check.
|
SAI_SWITCH_ATTR_CRC_RECALCULATION_ENABLE | Perform CRC recalculation (overwriting CRC value on egress)
|
SAI_SWITCH_ATTR_BFD_SESSION_STATE_CHANGE_NOTIFY | Set Switch BFD session state change event notification callback function passed to the adapter. Use sai_bfd_session_state_change_notification_fn as notification function.
|
SAI_SWITCH_ATTR_NUMBER_OF_BFD_SESSION | Number of BFD session in the NPU.
|
SAI_SWITCH_ATTR_MAX_BFD_SESSION | Max number of BFD session NPU supports.
|
SAI_SWITCH_ATTR_SUPPORTED_IPV4_BFD_SESSION_OFFLOAD_TYPE | List of BFD session offloads that are supported for IPv4.
|
SAI_SWITCH_ATTR_SUPPORTED_IPV6_BFD_SESSION_OFFLOAD_TYPE | List of BFD session offloads that are supported for IPv6.
|
SAI_SWITCH_ATTR_MIN_BFD_RX | Minimum Receive interval NPU supports in microseconds.
|
SAI_SWITCH_ATTR_MIN_BFD_TX | Minimum Transmit interval NPU supports in microseconds.
|
SAI_SWITCH_ATTR_ECN_ECT_THRESHOLD_ENABLE | Apply ECN thresholds for ECT traffic. Attribute controls whether ECT traffic needs to subjected to WRED thresholds or be subjected to ECN thresholds.
|
SAI_SWITCH_ATTR_VXLAN_DEFAULT_ROUTER_MAC | Default VXLAN router MAC (inner destination MAC for VXLAN encapsulation)
|
SAI_SWITCH_ATTR_VXLAN_DEFAULT_PORT | Default VXLAN destination UDP port.
|
SAI_SWITCH_ATTR_MAX_MIRROR_SESSION | Max number of mirror session NPU supports.
|
SAI_SWITCH_ATTR_MAX_SAMPLED_MIRROR_SESSION | Max number of sampled mirror session NPU supports.
|
SAI_SWITCH_ATTR_SUPPORTED_EXTENDED_STATS_MODE | Get the list of supported get statistics extended modes Empty list should be returned if get statistics extended is not supported at all.
|
SAI_SWITCH_ATTR_UNINIT_DATA_PLANE_ON_REMOVAL | Uninitialize data plane upon removal of switch object. Typical use case for tear down of the host adapter, is to remove the switch ID, which will stop all data and control plane, as leaving data plane open without control can be a security risk. However, on some scenarios, such as fast boot, host adapter would like to set this value to false, call remove switch, and have the data plane still running.
|
SAI_SWITCH_ATTR_TAM_OBJECT_ID | TAM bind point. Bind (or unbind) the TAM object. SAI_NULL_OBJECT_ID in the attribute value.
|
SAI_SWITCH_ATTR_TAM_EVENT_NOTIFY | Event notification callback function passed to the adapter. Use sai_tam_event_notification_fn as notification function.
|
SAI_SWITCH_ATTR_SUPPORTED_OBJECT_TYPE_LIST | List of supported object types. A list of object types (sai_object_type_t) that the SAI adapter can support.
|
SAI_SWITCH_ATTR_PRE_SHUTDOWN | Instruct SAI to execute switch pre-shutdown. Indicates controlled switch pre-shutdown as first step of warm shutdown. This hint is optional, SAI application could skip this step and go directly to warm shutdown. This hint should be ignored, if at the time SAI receives this hint, SAI_SWITCH_ATTR_RESTART_WARM is NOT already set to TRUE. The scope of pre-shutdown is to backup SAI/SDK data, but leave CPU port active for some final control plane traffic to go out. TRUE - Execute switch pre-shutdown for warm shutdown FALSE - No-op, does NOT mean cancelling already executed pre-shutdown
|
SAI_SWITCH_ATTR_NAT_ZONE_COUNTER_OBJECT_ID | NAT zone counter bind point. Bind (or unbind) the NAT zone counter object. SAI_NULL_OBJECT_ID in the attribute value.
|
SAI_SWITCH_ATTR_NAT_ENABLE | Enable NAT function.
|
SAI_SWITCH_ATTR_HARDWARE_ACCESS_BUS | Switch hardware access bus MDIO/I2C/CPLD.
|
SAI_SWITCH_ATTR_PLATFROM_CONTEXT | Platform context information. Platform context information provided by the host adapter to driver. This information is Host adapter specific, typically used for maintain synchronization and device information. Driver will give this context back to adapter as part of call back sai_switch_register_read/write_fn API.
|
SAI_SWITCH_ATTR_REGISTER_READ | Platform adaption device read callback function passed to the adapter. This is mandatory function for driver when device access not supported by file system. Use sai_switch_register_read_fn as read function.
|
SAI_SWITCH_ATTR_REGISTER_WRITE | Platform adaption device write callback function passed to the adapter. This is mandatory function for driver when device access not supported by file system. Use sai_switch_register_write_fn as write function.
|
SAI_SWITCH_ATTR_FIRMWARE_DOWNLOAD_BROADCAST | Enable/disable broadcast firmware download. TRUE - Enable firmware download as broadcast. FALSE - Enable firmware download as unicast.
|
SAI_SWITCH_ATTR_FIRMWARE_LOAD_METHOD | Firmware load method.
|
SAI_SWITCH_ATTR_FIRMWARE_LOAD_TYPE | Firmware load type auto/force/skip. Check firmware version. If it is different from current version load firmware. Otherwise always download the firmware specified by firmware load method.
|
SAI_SWITCH_ATTR_FIRMWARE_DOWNLOAD_EXECUTE | Execute Firmware download. In case of firmware download method broadcast, Set this attribute on any one of device connected to same bus. As part of execute firmware will broadcast to to all broadcast enabled devices on bus.
|
SAI_SWITCH_ATTR_FIRMWARE_BROADCAST_STOP | End Broadcast. Broadcast is enabled for BUS, All configurations will be broadcast. End broadcast before initialize device.
|
SAI_SWITCH_ATTR_FIRMWARE_VERIFY_AND_INIT_SWITCH | Firmware status verify and complete initialize device. Host Adapter should mandatory to set attribute to true, switch before doing any other configurations.
|
SAI_SWITCH_ATTR_FIRMWARE_STATUS | Firmware running status. Indicates firmware download and running status. TRUE - Firmware running FALSE - Firmware not running.
|
SAI_SWITCH_ATTR_FIRMWARE_MAJOR_VERSION | Firmware major version number.
|
SAI_SWITCH_ATTR_FIRMWARE_MINOR_VERSION | Firmware minor version number.
|
SAI_SWITCH_ATTR_PORT_CONNECTOR_LIST | Get the port connector list. validonly SAI_SWITCH_ATTR_TYPE == SAI_SWITCH_TYPE_PHY
|
SAI_SWITCH_ATTR_PROPOGATE_PORT_STATE_FROM_LINE_TO_SYSTEM_PORT_SUPPORT | Propagate line side port state to system side port. System side port state will reflect the ASIC port state. Host adapter can depends on ASIC port state instead of port states from system side, line side and ASIC port to determine interface operation status to application. TRUE - Device support for propagate line side port link status to system side port. FALSE - Device does not support propagate port states. validonly SAI_SWITCH_ATTR_TYPE == SAI_SWITCH_TYPE_PHY
|
SAI_SWITCH_ATTR_TYPE | Switch type NPU/PHY.
|
SAI_SWITCH_ATTR_MACSEC_OBJECT_LIST | MACsec object list for this switch.
|
SAI_SWITCH_ATTR_QOS_MPLS_EXP_TO_TC_MAP | Enable EXP -> TC MAP on switch. MAP id = SAI_NULL_OBJECT_ID to disable map on switch. Default no map.
|
SAI_SWITCH_ATTR_QOS_MPLS_EXP_TO_COLOR_MAP | Enable EXP -> COLOR MAP on switch. MAP id = SAI_NULL_OBJECT_ID to disable map on switch. Default no map in which case all exp values map to green color
|
SAI_SWITCH_ATTR_QOS_TC_AND_COLOR_TO_MPLS_EXP_MAP | Enable TC + COLOR -> EXP MAP. Map id = SAI_NULL_OBJECT_ID to disable map on switch. Default no map.
|
SAI_SWITCH_ATTR_SWITCH_ID | Vendor specific switch ID. Identifies switch chip. Mandatory in VOQ Switch
|
SAI_SWITCH_ATTR_MAX_SYSTEM_CORES | Maximum number of cores in the VOQ System (chassis)
|
SAI_SWITCH_ATTR_SYSTEM_PORT_CONFIG_LIST | System port configuration list.
|
SAI_SWITCH_ATTR_NUMBER_OF_SYSTEM_PORTS | Number of system ports.
|
SAI_SWITCH_ATTR_SYSTEM_PORT_LIST | Get the system port list.
|
SAI_SWITCH_ATTR_NUMBER_OF_FABRIC_PORTS | Number of fabric ports on the switch.
|
SAI_SWITCH_ATTR_FABRIC_PORT_LIST | Get the fabric port list.
|
SAI_SWITCH_ATTR_PACKET_DMA_MEMORY_POOL_SIZE | The size of the packet DMA pool memory in bytes This can be used in conjunction with sai_allocate_hostif_packet_fn to allocate a pool of memory upfront and manage it in the application.
|
SAI_SWITCH_ATTR_FAILOVER_CONFIG_MODE | Failover configuration modes.
|
SAI_SWITCH_ATTR_SUPPORTED_FAILOVER_MODE | Query for Failover mode support.
|
SAI_SWITCH_ATTR_TUNNEL_OBJECTS_LIST | Switch scoped Tunnel objects.
|
SAI_SWITCH_ATTR_PACKET_AVAILABLE_DMA_MEMORY_POOL_SIZE | The size of the available packet DMA pool memory in bytes This can be used in conjunction with total packet DMA pool size to account/debug % of memory available.
|
SAI_SWITCH_ATTR_PRE_INGRESS_ACL | Switch/Global bind point for Pre-ingress ACL object. Bind (or unbind) an Pre-ingress ACL table or ACL group globally. Enable/Update Pre-ingress ACL table or ACL group filtering by assigning a valid object id. Disable pre-ingress filtering by assigning SAI_NULL_OBJECT_ID in the attribute value.
|
SAI_SWITCH_ATTR_AVAILABLE_SNAPT_ENTRY | Available SNAPT entries.
|
SAI_SWITCH_ATTR_AVAILABLE_DNAPT_ENTRY | Available DNAPT entries.
|
SAI_SWITCH_ATTR_AVAILABLE_DOUBLE_NAPT_ENTRY | Available Double NAPT entries.
|
SAI_SWITCH_ATTR_SLAVE_MDIO_ADDR_LIST | Slave MDIO Address list. Configure list of slave MDIO addresses for firmware download in Broadcast mode. The sequence for firmware download in broadcast mode is as follows:
|
SAI_SWITCH_ATTR_MY_MAC_TABLE_MINIMUM_PRIORITY | Minimum priority for My MAC.
|
SAI_SWITCH_ATTR_MY_MAC_TABLE_MAXIMUM_PRIORITY | Maximum priority for My MAC.
|
SAI_SWITCH_ATTR_MY_MAC_LIST | My MAC entries installed on the switch.
|
SAI_SWITCH_ATTR_INSTALLED_MY_MAC_ENTRIES | Number of My MAC entries installed on the switch.
|
SAI_SWITCH_ATTR_AVAILABLE_MY_MAC_ENTRIES | Number of available My MAC entries.
|
SAI_SWITCH_ATTR_MAX_NUMBER_OF_FORWARDING_CLASSES | Maximum forwarding classes limit.
|
SAI_SWITCH_ATTR_QOS_DSCP_TO_FORWARDING_CLASS_MAP | Enable DSCP -> Forwarding Class MAP on switch. MAP id = SAI_NULL_OBJECT_ID to disable map on switch. Default no map.
|
SAI_SWITCH_ATTR_QOS_MPLS_EXP_TO_FORWARDING_CLASS_MAP | Enable EXP -> Forwarding Class MAP on switch. MAP id = SAI_NULL_OBJECT_ID to disable map on switch. Default no map.
|
SAI_SWITCH_ATTR_IPSEC_OBJECT_ID | IPsec object for this switch.
|
SAI_SWITCH_ATTR_IPSEC_SA_TAG_TPID | TPID in IPsec SA-Tag. This is used only between a Switch ASIC and IPsec-enabled PHY chips and not packets on external network.
|
SAI_SWITCH_ATTR_IPSEC_SA_STATUS_CHANGE_NOTIFY | IPsec SA status change notification callback function. In case driver does not support this attribute, The Host adapter should poll IPsec SA status by SAI_IPSEC_SA_ATTR_OCTET_COUNT_STATUS and SAI_IPSEC_SA_ATTR_EGRESS_ESN. Use sai_ipsec_sa_status_change_notification_fn as notification function.
|
SAI_SWITCH_ATTR_NAT_EVENT_NOTIFY | NAT event notification callback function passed to the adapter. Use sai_nat_event_notification_fn as notification function.
|
SAI_SWITCH_ATTR_MAX_ECMP_MEMBER_COUNT | Number of ECMP members supported across the all nexthop groups by switch.
|
SAI_SWITCH_ATTR_ECMP_MEMBER_COUNT | Number of ECMP Members configured. SAI_SWITCH_ATTR_ECMP_MEMBER_COUNT takes precedence over SAI_KEY_NUM_ECMP_GROUPS string. Default value is same as SAI_SWITCH_ATTR_ECMP_MEMBERS.
|
SAI_SWITCH_ATTR_ARS_PROFILE | Adaptive routing and switching quality map.
|
SAI_SWITCH_ATTR_ACL_STAGE_POST_INGRESS | Post Ingress ACL stage.
|
SAI_SWITCH_ATTR_CREDIT_WD | Enable or disable credit watchdog. Credit Watchdog can be enabled or disabled using this attribute for VOQ based system
|
SAI_SWITCH_ATTR_CREDIT_WD_TIMER | Credit watchdog threshold timer in milliseconds Value must be within 10ms - 1000ms range Queue is set to delete state and all packets in queue are deleted after the timer expiry.
|
SAI_SWITCH_ATTR_SWITCH_ISOLATE | Fabric chassis isolation setting. true: Trigger the switch isolate process false: Undo the isolation operation. This attribute is for Fabric or VOQ Chassis only Setting this flag to true will stop data traffic from flowing on local fabric ports. Fabric control traffic like credit grants and control messages will still continue to flow. Setting this flag to false will (re)enable data traffic on fabric ports. If this attribute is set to true, it overrides port level isolation setting.
|
SAI_SWITCH_ATTR_HOSTIF_OPER_STATUS_UPDATE_MODE | Set hostif operational status update mode. This will set layer responsible for updating the operational status of hostif.
|
SAI_SWITCH_ATTR_SWITCH_ASIC_SDK_HEALTH_EVENT_NOTIFY | Health notification callback function passed to the adapter. Use sai_switch_asic_sdk_health_event_notification_fn as notification function.
|
SAI_SWITCH_ATTR_REG_FATAL_SWITCH_ASIC_SDK_HEALTH_CATEGORY | Registration for health fatal categories. For specifying categories of causes for severity fatal events
|
SAI_SWITCH_ATTR_REG_WARNING_SWITCH_ASIC_SDK_HEALTH_CATEGORY | Registration for health warning categories. For specifying categories of causes for severity warning events
|
SAI_SWITCH_ATTR_REG_NOTICE_SWITCH_ASIC_SDK_HEALTH_CATEGORY | Registration for health notice categories. For specifying categories of causes for severity notice events
|
SAI_SWITCH_ATTR_ACL_CHAIN_LIST | ACL chain capabilities supported by the NPU.
|
SAI_SWITCH_ATTR_PORT_HOST_TX_READY_NOTIFY | Port host tx ready notification callback function passed to the adapter. Use sai_port_host_tx_ready_notification_fn as notification function.
|
SAI_SWITCH_ATTR_TUNNEL_TERM_TABLE_ENTRY_MINIMUM_PRIORITY | Minimum priority for Tunnel Term table.
|
SAI_SWITCH_ATTR_TUNNEL_TERM_TABLE_ENTRY_MAXIMUM_PRIORITY | Maximum priority for Tunnel Term table.
|
SAI_SWITCH_ATTR_TWAMP_SESSION_EVENT_NOTIFY | TWAMP session event notification callback function passed to the adapter. Use sai_twamp_session_event_notification_fn as notification function.
|
SAI_SWITCH_ATTR_AVAILABLE_TWAMP_SESSION | Number of Two-Way Active Measurement Protocol session.
|
SAI_SWITCH_ATTR_MAX_TWAMP_SESSION | Max number of Two-Way Active Measurement Protocol session supports.
|
SAI_SWITCH_ATTR_AVAILABLE_IP_NEXT_HOP_GROUP_MEMBER_ENTRY | Available IP Next hop group member entries.
|
SAI_SWITCH_ATTR_AVAILABLE_SYSTEM_VOQS | Available VOQ including unicast and multicast VOQ.
|
SAI_SWITCH_ATTR_END | End of attributes. |
SAI_SWITCH_ATTR_CUSTOM_RANGE_START | Custom range base value |
SAI_SWITCH_ATTR_CUSTOM_RANGE_END | End of custom range base |
Definition at line 614 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_FAILOVER_CONFIG_MODE Used for Failover configuration mode In case of primary port failure, hitless enables the switch over to secondary port without losing link. It allows uninterrupted data transmission.
Enumerator | |
---|---|
SAI_SWITCH_FAILOVER_CONFIG_MODE_NO_HITLESS | Ports are configured but do not operate in hitless mode |
SAI_SWITCH_FAILOVER_CONFIG_MODE_HITLESS | Ports are configured and operate in hitless mode |
Definition at line 321 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_FIRMWARE_LOAD_METHOD.
Definition at line 267 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_FIRMWARE_LOAD_TYPE.
Definition at line 283 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_HARDWARE_ACCESS_BUS.
Enumerator | |
---|---|
SAI_SWITCH_HARDWARE_ACCESS_BUS_MDIO | Hardware access bus is MDIO |
SAI_SWITCH_HARDWARE_ACCESS_BUS_I2C | Hardware access bus is I2C |
SAI_SWITCH_HARDWARE_ACCESS_BUS_CPLD | Hardware access bus is CPLD |
Definition at line 251 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_HOSTIF_OPER_STATUS_UPDATE_MODE.
Definition at line 586 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_MCAST_SNOOPING_CAPABILITY.
Definition at line 232 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_OPER_STATUS.
Enumerator | |
---|---|
SAI_SWITCH_OPER_STATUS_UNKNOWN | Unknown |
SAI_SWITCH_OPER_STATUS_UP | Up |
SAI_SWITCH_OPER_STATUS_DOWN | Down |
SAI_SWITCH_OPER_STATUS_FAILED | Switch encountered a fatal error |
Definition at line 49 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_RESTART_TYPE.
Enumerator | |
---|---|
SAI_SWITCH_RESTART_TYPE_NONE | NPU doesn't support warmboot |
SAI_SWITCH_RESTART_TYPE_PLANNED | Planned restart only |
SAI_SWITCH_RESTART_TYPE_ANY | Both planned and unplanned restart |
Definition at line 216 of file saiswitch.h.
enum _sai_switch_stat_t |
Switch counter IDs in sai_get_switch_stats() call.
Definition at line 3056 of file saiswitch.h.
Attribute data for SAI_SWITCH_ATTR_SWITCHING_MODE.
Enumerator | |
---|---|
SAI_SWITCH_SWITCHING_MODE_CUT_THROUGH | Cut-through switching mode |
SAI_SWITCH_SWITCHING_MODE_STORE_AND_FORWARD | Store-and-forward switching mode |
Definition at line 174 of file saiswitch.h.
Defines tunnel attributes at switch level. SAI_OBJECT_TYPE_SWITCH_TUNNEL object provides per tunnel type global configuration. SAI_OBJECT_TYPE_TUNNEL object configuration overrides the switch scoped global configuration.
Enumerator | |
---|---|
SAI_SWITCH_TUNNEL_ATTR_START | Start of attributes. |
SAI_SWITCH_TUNNEL_ATTR_TUNNEL_TYPE | Tunnel type key.
|
SAI_SWITCH_TUNNEL_ATTR_LOOPBACK_PACKET_ACTION | Packet action when a packet ingress and gets routed back to same tunnel.
|
SAI_SWITCH_TUNNEL_ATTR_TUNNEL_ENCAP_ECN_MODE | Tunnel encap ECN mode.
|
SAI_SWITCH_TUNNEL_ATTR_ENCAP_MAPPERS | Tunnel encap ECN mappers only.
|
SAI_SWITCH_TUNNEL_ATTR_TUNNEL_DECAP_ECN_MODE | Tunnel decap ECN mode.
|
SAI_SWITCH_TUNNEL_ATTR_DECAP_MAPPERS | Tunnel decap ECN mappers only.
|
SAI_SWITCH_TUNNEL_ATTR_TUNNEL_VXLAN_UDP_SPORT_MODE | Tunnel VXLAN UDP source port mode.
|
SAI_SWITCH_TUNNEL_ATTR_VXLAN_UDP_SPORT | Tunnel UDP source port.
|
SAI_SWITCH_TUNNEL_ATTR_VXLAN_UDP_SPORT_MASK | Tunnel UDP source port mask. Sport mask defining the number of least significant bits reserved for the calculated hash value. 0 means a fixed value.
|
SAI_SWITCH_TUNNEL_ATTR_ENCAP_QOS_TC_AND_COLOR_TO_DSCP_MAP | Enable TC AND COLOR -> DSCP MAP on tunnel at encapsulation (access-to-network) node to remark the DSCP in tunnel header.
|
SAI_SWITCH_TUNNEL_ATTR_ENCAP_QOS_TC_TO_QUEUE_MAP | Enable TC -> Queue MAP on tunnel encap. Map id = SAI_NULL_OBJECT_ID to disable map on tunnel. Default no map, i.e. packets are queued with static mapping.
|
SAI_SWITCH_TUNNEL_ATTR_DECAP_QOS_DSCP_TO_TC_MAP | Enable DSCP -> TC MAP on tunnel at termination (Network-to-access) node.
|
SAI_SWITCH_TUNNEL_ATTR_DECAP_QOS_TC_TO_PRIORITY_GROUP_MAP | Enable TC -> Priority Group MAP. Map id = SAI_NULL_OBJECT_ID to disable map on port. Default no map
|
SAI_SWITCH_TUNNEL_ATTR_END | End of attributes. |
SAI_SWITCH_TUNNEL_ATTR_CUSTOM_RANGE_START | Custom range base value |
SAI_SWITCH_TUNNEL_ATTR_CUSTOM_RANGE_END | End of custom range base |
Definition at line 419 of file saiswitch.h.
enum _sai_switch_type_t |
Attribute data for SAI_SWITCH_ATTR_TYPE.
Definition at line 299 of file saiswitch.h.
Defines tunnel decap ECN mode.
Definition at line 393 of file saiswitch.h.
Defines tunnel encap ECN mode.
Enumerator | |
---|---|
SAI_TUNNEL_ENCAP_ECN_MODE_STANDARD | Normal mode behavior defined in RFC 6040 section 4.1 copy from inner. |
SAI_TUNNEL_ENCAP_ECN_MODE_USER_DEFINED | User defined behavior. |
Definition at line 375 of file saiswitch.h.
enum _sai_tunnel_type_t |
Defines tunnel type.
Definition at line 334 of file saiswitch.h.
Defines VXLAN tunnel UDP source port mode.
Enumerator | |
---|---|
SAI_TUNNEL_VXLAN_UDP_SPORT_MODE_USER_DEFINED | User define value. |
SAI_TUNNEL_VXLAN_UDP_SPORT_MODE_EPHEMERAL | RFC6335 Computed hash value in range 49152-65535. |
Definition at line 359 of file saiswitch.h.