SAI Metadata
Loading...
Searching...
No Matches
saiexperimentalbmtor.h File Reference

This module defines SAI P4 extension interface. More...

#include <saitypes.h>

Go to the source code of this file.

Classes

struct  _sai_bmtor_api_t
 

Typedefs

typedef enum _sai_table_bitmap_classification_entry_action_t sai_table_bitmap_classification_entry_action_t
 Attribute data for SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_ACTION.
 
typedef enum _sai_table_bitmap_router_entry_action_t sai_table_bitmap_router_entry_action_t
 Attribute data for SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ACTION.
 
typedef enum _sai_table_meta_tunnel_entry_action_t sai_table_meta_tunnel_entry_action_t
 Attribute data for SAI_TABLE_META_TUNNEL_ENTRY_ATTR_ACTION.
 
typedef enum _sai_table_bitmap_classification_entry_attr_t sai_table_bitmap_classification_entry_attr_t
 Attribute ID for table_bitmap_classification.
 
typedef enum _sai_table_bitmap_router_entry_attr_t sai_table_bitmap_router_entry_attr_t
 Attribute ID for table_bitmap_router.
 
typedef enum _sai_table_meta_tunnel_entry_attr_t sai_table_meta_tunnel_entry_attr_t
 Attribute ID for table_meta_tunnel.
 
typedef enum _sai_table_bitmap_classification_entry_stat_t sai_table_bitmap_classification_entry_stat_t
 Counter IDs in sai_get_table_bitmap_classification_entry_stats() call.
 
typedef enum _sai_table_bitmap_router_entry_stat_t sai_table_bitmap_router_entry_stat_t
 Counter IDs in sai_get_table_bitmap_router_entry_stats() call.
 
typedef enum _sai_table_meta_tunnel_entry_stat_t sai_table_meta_tunnel_entry_stat_t
 Counter IDs in sai_get_table_meta_tunnel_entry_stats() call.
 
typedef sai_status_t(* sai_create_table_bitmap_classification_entry_fn) (_Out_ sai_object_id_t *table_bitmap_classification_entry_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create table_bitmap_classification_entry.
 
typedef sai_status_t(* sai_remove_table_bitmap_classification_entry_fn) (_In_ sai_object_id_t table_bitmap_classification_entry_id)
 Remove table_bitmap_classification_entry.
 
typedef sai_status_t(* sai_set_table_bitmap_classification_entry_attribute_fn) (_In_ sai_object_id_t table_bitmap_classification_entry_id, _In_ const sai_attribute_t *attr)
 Set attribute for table_bitmap_classification_entry.
 
typedef sai_status_t(* sai_get_table_bitmap_classification_entry_attribute_fn) (_In_ sai_object_id_t table_bitmap_classification_entry_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attribute for table_bitmap_classification_entry.
 
typedef sai_status_t(* sai_get_table_bitmap_classification_entry_stats_fn) (_In_ sai_object_id_t table_bitmap_classification_entry_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
 Get table_bitmap_classification statistics counters. Deprecated for backward compatibility.
 
typedef sai_status_t(* sai_get_table_bitmap_classification_entry_stats_ext_fn) (_In_ sai_object_id_t table_bitmap_classification_entry_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 table_bitmap_classification statistics counters extended.
 
typedef sai_status_t(* sai_clear_table_bitmap_classification_entry_stats_fn) (_In_ sai_object_id_t table_bitmap_classification_entry_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
 Clear statistics counters.
 
typedef sai_status_t(* sai_create_table_bitmap_router_entry_fn) (_Out_ sai_object_id_t *table_bitmap_router_entry_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create table_bitmap_router_entry.
 
typedef sai_status_t(* sai_remove_table_bitmap_router_entry_fn) (_In_ sai_object_id_t table_bitmap_router_entry_id)
 Remove table_bitmap_router_entry.
 
typedef sai_status_t(* sai_set_table_bitmap_router_entry_attribute_fn) (_In_ sai_object_id_t table_bitmap_router_entry_id, _In_ const sai_attribute_t *attr)
 Set attribute for table_bitmap_router_entry.
 
typedef sai_status_t(* sai_get_table_bitmap_router_entry_attribute_fn) (_In_ sai_object_id_t table_bitmap_router_entry_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attribute for table_bitmap_router_entry.
 
typedef sai_status_t(* sai_get_table_bitmap_router_entry_stats_fn) (_In_ sai_object_id_t table_bitmap_router_entry_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
 Get table_bitmap_router statistics counters. Deprecated for backward compatibility.
 
typedef sai_status_t(* sai_get_table_bitmap_router_entry_stats_ext_fn) (_In_ sai_object_id_t table_bitmap_router_entry_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 table_bitmap_router statistics counters extended.
 
typedef sai_status_t(* sai_clear_table_bitmap_router_entry_stats_fn) (_In_ sai_object_id_t table_bitmap_router_entry_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
 Clear statistics counters.
 
typedef sai_status_t(* sai_create_table_meta_tunnel_entry_fn) (_Out_ sai_object_id_t *table_meta_tunnel_entry_id, _In_ sai_object_id_t switch_id, _In_ uint32_t attr_count, _In_ const sai_attribute_t *attr_list)
 Create table_meta_tunnel_entry.
 
typedef sai_status_t(* sai_remove_table_meta_tunnel_entry_fn) (_In_ sai_object_id_t table_meta_tunnel_entry_id)
 Remove table_meta_tunnel_entry.
 
typedef sai_status_t(* sai_set_table_meta_tunnel_entry_attribute_fn) (_In_ sai_object_id_t table_meta_tunnel_entry_id, _In_ const sai_attribute_t *attr)
 Set attribute for table_meta_tunnel_entry.
 
typedef sai_status_t(* sai_get_table_meta_tunnel_entry_attribute_fn) (_In_ sai_object_id_t table_meta_tunnel_entry_id, _In_ uint32_t attr_count, _Inout_ sai_attribute_t *attr_list)
 Get attribute for table_meta_tunnel_entry.
 
typedef sai_status_t(* sai_get_table_meta_tunnel_entry_stats_fn) (_In_ sai_object_id_t table_meta_tunnel_entry_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids, _Out_ uint64_t *counters)
 Get table_meta_tunnel statistics counters. Deprecated for backward compatibility.
 
typedef sai_status_t(* sai_get_table_meta_tunnel_entry_stats_ext_fn) (_In_ sai_object_id_t table_meta_tunnel_entry_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 table_meta_tunnel statistics counters extended.
 
typedef sai_status_t(* sai_clear_table_meta_tunnel_entry_stats_fn) (_In_ sai_object_id_t table_meta_tunnel_entry_id, _In_ uint32_t number_of_counters, _In_ const sai_stat_id_t *counter_ids)
 Clear statistics counters.
 
typedef struct _sai_bmtor_api_t sai_bmtor_api_t
 

Enumerations

enum  _sai_table_bitmap_classification_entry_action_t { SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ACTION_SET_METADATA , SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ACTION_NOACTION }
 Attribute data for SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_ACTION. More...
 
enum  _sai_table_bitmap_router_entry_action_t {
  SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_NEXTHOP , SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_LOCAL , SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_CPU , SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_DROP ,
  SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_NOACTION
}
 Attribute data for SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ACTION. More...
 
enum  _sai_table_meta_tunnel_entry_action_t { SAI_TABLE_META_TUNNEL_ENTRY_ACTION_TUNNEL_ENCAP , SAI_TABLE_META_TUNNEL_ENTRY_ACTION_NOACTION }
 Attribute data for SAI_TABLE_META_TUNNEL_ENTRY_ATTR_ACTION. More...
 
enum  _sai_table_bitmap_classification_entry_attr_t {
  SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_START , SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_ACTION = SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_START , SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_ROUTER_INTERFACE_KEY , SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_IS_DEFAULT ,
  SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_IN_RIF_METADATA , SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_END , SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_CUSTOM_RANGE_START = 0x10000000 , SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_CUSTOM_RANGE_END
}
 Attribute ID for table_bitmap_classification. More...
 
enum  _sai_table_bitmap_router_entry_attr_t {
  SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_START , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ACTION = SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_START , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_PRIORITY , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_IN_RIF_METADATA_KEY ,
  SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_IN_RIF_METADATA_MASK , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_DST_IP_KEY , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_TUNNEL_INDEX , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_NEXT_HOP ,
  SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ROUTER_INTERFACE , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_TRAP_ID , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_END , SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_CUSTOM_RANGE_START = 0x10000000 ,
  SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_CUSTOM_RANGE_END
}
 Attribute ID for table_bitmap_router. More...
 
enum  _sai_table_meta_tunnel_entry_attr_t {
  SAI_TABLE_META_TUNNEL_ENTRY_ATTR_START , SAI_TABLE_META_TUNNEL_ENTRY_ATTR_ACTION = SAI_TABLE_META_TUNNEL_ENTRY_ATTR_START , SAI_TABLE_META_TUNNEL_ENTRY_ATTR_METADATA_KEY , SAI_TABLE_META_TUNNEL_ENTRY_ATTR_IS_DEFAULT ,
  SAI_TABLE_META_TUNNEL_ENTRY_ATTR_TUNNEL_ID , SAI_TABLE_META_TUNNEL_ENTRY_ATTR_UNDERLAY_DIP , SAI_TABLE_META_TUNNEL_ENTRY_ATTR_END , SAI_TABLE_META_TUNNEL_ENTRY_ATTR_CUSTOM_RANGE_START = 0x10000000 ,
  SAI_TABLE_META_TUNNEL_ENTRY_ATTR_CUSTOM_RANGE_END
}
 Attribute ID for table_meta_tunnel. More...
 
enum  _sai_table_bitmap_classification_entry_stat_t { SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_STAT_HIT_PACKETS , SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_STAT_HIT_OCTETS }
 Counter IDs in sai_get_table_bitmap_classification_entry_stats() call. More...
 
enum  _sai_table_bitmap_router_entry_stat_t { SAI_TABLE_BITMAP_ROUTER_ENTRY_STAT_HIT_PACKETS , SAI_TABLE_BITMAP_ROUTER_ENTRY_STAT_HIT_OCTETS }
 Counter IDs in sai_get_table_bitmap_router_entry_stats() call. More...
 
enum  _sai_table_meta_tunnel_entry_stat_t { SAI_TABLE_META_TUNNEL_ENTRY_STAT_HIT_PACKETS , SAI_TABLE_META_TUNNEL_ENTRY_STAT_HIT_OCTETS }
 Counter IDs in sai_get_table_meta_tunnel_entry_stats() call. More...
 

Detailed Description

This module defines SAI P4 extension interface.

Copyright (c) 2014 Microsoft Open Technologies, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

THIS CODE IS PROVIDED ON AN AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY OR NON-INFRINGEMENT.

See the Apache Version 2.0 License for specific language governing permissions and limitations under the License.

Microsoft would like to thank the following companies for their review and assistance with these files: Intel Corporation, Mellanox Technologies Ltd, Dell Products, L.P., Facebook, Inc., Marvell International Ltd.

Definition in file saiexperimentalbmtor.h.