From 70ac33cf68828f50ed4330341f8f39b03c66a99d Mon Sep 17 00:00:00 2001 From: Marian Pritsak Date: Mon, 28 Jan 2019 13:39:23 +0200 Subject: [PATCH 1/3] [saiexperimentalbmtor] Update API Rename APIs to bitmap_classification_table and bitmap_router Match on ingress rif Rename action to_tunnel -> to_nexthop Use in_rif metadata as a bitvector Signed-off-by: Marian Pritsak --- experimental/saiexperimentalbmtor.h | 324 ++++++++++++---------------- 1 file changed, 139 insertions(+), 185 deletions(-) diff --git a/experimental/saiexperimentalbmtor.h b/experimental/saiexperimentalbmtor.h index c47da1022..52a9d7fa8 100644 --- a/experimental/saiexperimentalbmtor.h +++ b/experimental/saiexperimentalbmtor.h @@ -34,152 +34,108 @@ */ /** - * @brief Attribute data for #SAI_TABLE_VNET_ENTRY_ATTR_ACTION + * @brief Attribute data for #SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_ACTION */ -typedef enum _sai_table_vnet_entry_action_t +typedef enum _sai_table_bitmap_classification_entry_action_t { - SAI_TABLE_VNET_ENTRY_ACTION_SET_VNET_BITMAP, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ACTION_SET_METADATA, - SAI_TABLE_VNET_ENTRY_ACTION_DROP, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ACTION_NOACTION, - SAI_TABLE_VNET_ENTRY_ACTION_NOACTION, - -} sai_table_vnet_entry_action_t; +} sai_table_bitmap_classification_entry_action_t; /** - * @brief Attribute data for #SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_ACTION + * @brief Attribute data for #SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ACTION */ -typedef enum _sai_table_tunnel_route_entry_action_t +typedef enum _sai_table_bitmap_router_entry_action_t { - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ACTION_TO_TUNNEL, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_NEXTHOP, - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ACTION_TO_PORT, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_LOCAL, - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ACTION_TO_LOCAL, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_CPU, - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ACTION_DROP, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_DROP, - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ACTION_NOACTION, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_NOACTION, -} sai_table_tunnel_route_entry_action_t; +} sai_table_bitmap_router_entry_action_t; /** - * @brief Attribute ID for table_vnet + * @brief Attribute ID for table_bitmap_classification */ -typedef enum _sai_table_vnet_entry_attr_t +typedef enum _sai_table_bitmap_classification_entry_attr_t { /** * @brief Start of attributes */ - SAI_TABLE_VNET_ENTRY_ATTR_START, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_START, /** * @brief Action * - * @type sai_table_vnet_entry_action_t - * @flags MANDATORY_ON_CREATE | CREATE_ONLY - */ - SAI_TABLE_VNET_ENTRY_ATTR_ACTION = SAI_TABLE_VNET_ENTRY_ATTR_START, - - /** - * @brief Rule priority in table - * - * @type sai_uint32_t + * @type sai_table_bitmap_classification_entry_action_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY */ - SAI_TABLE_VNET_ENTRY_ATTR_PRIORITY, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_ACTION = SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_START, /** - * @brief Matched key src_port (key) + * @brief Exact Matched key router_interface * * @type sai_object_id_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY - * @objects SAI_OBJECT_TYPE_PORT + * @objects SAI_OBJECT_TYPE_ROUTER_INTERFACE */ - SAI_TABLE_VNET_ENTRY_ATTR_SRC_PORT_KEY, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_ROUTER_INTERFACE_KEY, /** - * @brief Matched key src_port (mask) + * @brief Is default entry * * @type bool - * @flags MANDATORY_ON_CREATE | CREATE_ONLY + * @flags CREATE_ONLY + * @default false */ - SAI_TABLE_VNET_ENTRY_ATTR_SRC_PORT_MASK, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_IS_DEFAULT, /** - * @brief Matched key vlan_id (key) - * - * @type sai_uint16_t - * @flags MANDATORY_ON_CREATE | CREATE_ONLY - * @isvlan false - */ - SAI_TABLE_VNET_ENTRY_ATTR_VLAN_ID_KEY, - - /** - * @brief Matched key vlan_id (mask) - * - * @type sai_uint16_t - * @flags MANDATORY_ON_CREATE | CREATE_ONLY - * @isvlan false - */ - SAI_TABLE_VNET_ENTRY_ATTR_VLAN_ID_MASK, - - /** - * @brief Matched key vni_id (key) + * @brief Action set_metadata parameter in_rif_metadata * * @type sai_uint32_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY + * @condition SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_ACTION == SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ACTION_SET_METADATA */ - SAI_TABLE_VNET_ENTRY_ATTR_VNI_ID_KEY, - - /** - * @brief Matched key vni_id (mask) - * - * @type sai_uint32_t - * @flags MANDATORY_ON_CREATE | CREATE_ONLY - */ - SAI_TABLE_VNET_ENTRY_ATTR_VNI_ID_MASK, - - /** - * @brief Action set_vnet_bitmap parameter metadata - * - * @type sai_uint16_t - * @flags MANDATORY_ON_CREATE | CREATE_ONLY - * @isvlan false - * @condition SAI_TABLE_VNET_ENTRY_ATTR_ACTION == SAI_TABLE_VNET_ENTRY_ACTION_SET_VNET_BITMAP - */ - SAI_TABLE_VNET_ENTRY_ATTR_METADATA, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_IN_RIF_METADATA, /** * @brief End of attributes */ - SAI_TABLE_VNET_ENTRY_ATTR_END, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_END, /** Custom range base value */ - SAI_TABLE_VNET_ENTRY_ATTR_CUSTOM_RANGE_START = 0x10000000, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_CUSTOM_RANGE_START = 0x10000000, /** End of custom range base */ - SAI_TABLE_VNET_ENTRY_ATTR_CUSTOM_RANGE_END, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_ATTR_CUSTOM_RANGE_END, -} sai_table_vnet_entry_attr_t; +} sai_table_bitmap_classification_entry_attr_t; /** - * @brief Attribute ID for table_tunnel_route + * @brief Attribute ID for table_bitmap_router */ -typedef enum _sai_table_tunnel_route_entry_attr_t +typedef enum _sai_table_bitmap_router_entry_attr_t { /** * @brief Start of attributes */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_START, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_START, /** * @brief Action * - * @type sai_table_tunnel_route_entry_action_t + * @type sai_table_bitmap_router_entry_action_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_ACTION = SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_START, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ACTION = SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_START, /** * @brief Rule priority in table @@ -187,167 +143,165 @@ typedef enum _sai_table_tunnel_route_entry_attr_t * @type sai_uint32_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_PRIORITY, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_PRIORITY, /** - * @brief Matched key metadata (key) + * @brief Ternary Matched key in_rif_metadata (key) * - * @type sai_uint16_t + * @type sai_uint32_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY - * @isvlan false */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_METADATA_KEY, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_IN_RIF_METADATA_KEY, /** - * @brief Matched key metadata (mask) + * @brief Ternary Matched mask in_rif_metadata (mask) * - * @type sai_uint16_t + * @type sai_uint32_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY - * @isvlan false */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_METADATA_MASK, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_IN_RIF_METADATA_MASK, /** - * @brief Matched key dst_ip + * @brief LPM Matched key dst_ip * * @type sai_ip_prefix_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_DST_IP_KEY, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_DST_IP_KEY, /** - * @brief Action to_tunnel parameter next_hop + * @brief Action to_nexthop parameter next_hop * * @type sai_object_id_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY * @objects SAI_OBJECT_TYPE_NEXT_HOP - * @condition SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_ACTION == SAI_TABLE_TUNNEL_ROUTE_ENTRY_ACTION_TO_TUNNEL + * @condition SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ACTION == SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_NEXTHOP */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_NEXT_HOP, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_NEXT_HOP, /** - * @brief Action to_port parameter port_id + * @brief Action to_local parameter router_interface * * @type sai_object_id_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY - * @objects SAI_OBJECT_TYPE_PORT - * @condition SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_ACTION == SAI_TABLE_TUNNEL_ROUTE_ENTRY_ACTION_TO_PORT + * @objects SAI_OBJECT_TYPE_ROUTER_INTERFACE + * @condition SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ACTION == SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_LOCAL */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_PORT_ID, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ROUTER_INTERFACE, /** - * @brief Action to_local parameter router_interface + * @brief Action to_cpu parameter trap_id * * @type sai_object_id_t * @flags MANDATORY_ON_CREATE | CREATE_ONLY - * @objects SAI_OBJECT_TYPE_ROUTER_INTERFACE - * @condition SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_ACTION == SAI_TABLE_TUNNEL_ROUTE_ENTRY_ACTION_TO_LOCAL + * @objects SAI_OBJECT_TYPE_HOSTIF_TRAP + * @condition SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_ACTION == SAI_TABLE_BITMAP_ROUTER_ENTRY_ACTION_TO_CPU */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_ROUTER_INTERFACE, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_TRAP_ID, /** * @brief End of attributes */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_END, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_END, /** Custom range base value */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_CUSTOM_RANGE_START = 0x10000000, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_CUSTOM_RANGE_START = 0x10000000, /** End of custom range base */ - SAI_TABLE_TUNNEL_ROUTE_ENTRY_ATTR_CUSTOM_RANGE_END, + SAI_TABLE_BITMAP_ROUTER_ENTRY_ATTR_CUSTOM_RANGE_END, -} sai_table_tunnel_route_entry_attr_t; +} sai_table_bitmap_router_entry_attr_t; /** - * @brief Counter IDs in sai_get_table_vnet_entry_stats() call + * @brief Counter IDs in sai_get_table_bitmap_classification_entry_stats() call */ -typedef enum _sai_table_vnet_entry_stat_t +typedef enum _sai_table_bitmap_classification_entry_stat_t { - SAI_TABLE_VNET_ENTRY_STAT_HIT_PACKETS, - SAI_TABLE_VNET_ENTRY_STAT_HIT_OCTETS, -} sai_table_vnet_entry_stat_t; + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_STAT_HIT_PACKETS, + SAI_TABLE_BITMAP_CLASSIFICATION_ENTRY_STAT_HIT_OCTETS, +} sai_table_bitmap_classification_entry_stat_t; /** - * @brief Counter IDs in sai_get_table_tunnel_route_entry_stats() call + * @brief Counter IDs in sai_get_table_bitmap_router_entry_stats() call */ -typedef enum _sai_table_tunnel_route_entry_stat_t +typedef enum _sai_table_bitmap_router_entry_stat_t { - SAI_TABLE_TUNNEL_ROUTE_ENTRY_STAT_HIT_PACKETS, - SAI_TABLE_TUNNEL_ROUTE_ENTRY_STAT_HIT_OCTETS, -} sai_table_tunnel_route_entry_stat_t; + SAI_TABLE_BITMAP_ROUTER_ENTRY_STAT_HIT_PACKETS, + SAI_TABLE_BITMAP_ROUTER_ENTRY_STAT_HIT_OCTETS, +} sai_table_bitmap_router_entry_stat_t; /** - * @brief Create table_vnet_entry + * @brief Create table_bitmap_classification_entry * - * @param[out] table_vnet_entry_id Entry id + * @param[out] table_bitmap_classification_entry_id Entry id * @param[in] switch_id Switch id * @param[in] attr_count Number of attributes * @param[in] attr_list Array of attributes * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_create_table_vnet_entry_fn)( - _Out_ sai_object_id_t *table_vnet_entry_id, +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); /** - * @brief Remove table_vnet_entry + * @brief Remove table_bitmap_classification_entry * - * @param[in] table_vnet_entry_id Entry id + * @param[in] table_bitmap_classification_entry_id Entry id * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_remove_table_vnet_entry_fn)( - _In_ sai_object_id_t table_vnet_entry_id); +typedef sai_status_t (*sai_remove_table_bitmap_classification_entry_fn)( + _In_ sai_object_id_t table_bitmap_classification_entry_id); /** - * @brief Set attribute for table_vnet_entry + * @brief Set attribute for table_bitmap_classification_entry * - * @param[in] table_vnet_entry_id Entry id + * @param[in] table_bitmap_classification_entry_id Entry id * @param[in] attr Attribute * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_set_table_vnet_entry_attribute_fn)( - _In_ sai_object_id_t table_vnet_entry_id, +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); /** - * @brief Get attribute for table_vnet_entry + * @brief Get attribute for table_bitmap_classification_entry * - * @param[in] table_vnet_entry_id Entry id + * @param[in] table_bitmap_classification_entry_id Entry id * @param[in] attr_count Number of attributes * @param[inout] attr_list Array of attributes * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_get_table_vnet_entry_attribute_fn)( - _In_ sai_object_id_t table_vnet_entry_id, +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); /** - * @brief Get table_vnet statistics counters. Deprecated for backward compatibility. + * @brief Get table_bitmap_classification statistics counters. Deprecated for backward compatibility. * - * @param[in] table_vnet_entry_id Entry id + * @param[in] table_bitmap_classification_entry_id Entry id * @param[in] number_of_counters Number of counters in the array * @param[in] counter_ids Specifies the array of counter ids * @param[out] counters Array of resulting counter values. * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_get_table_vnet_entry_stats_fn)( - _In_ sai_object_id_t table_vnet_entry_id, +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); /** - * @brief Get table_vnet statistics counters extended. + * @brief Get table_bitmap_classification statistics counters extended. * - * @param[in] table_vnet_entry_id Entry id + * @param[in] table_bitmap_classification_entry_id Entry id * @param[in] number_of_counters Number of counters in the array * @param[in] counter_ids Specifies the array of counter ids * @param[in] mode Statistics mode @@ -355,8 +309,8 @@ typedef sai_status_t (*sai_get_table_vnet_entry_stats_fn)( * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_get_table_vnet_entry_stats_ext_fn)( - _In_ sai_object_id_t table_vnet_entry_id, +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, @@ -365,89 +319,89 @@ typedef sai_status_t (*sai_get_table_vnet_entry_stats_ext_fn)( /** * @brief Clear statistics counters. * - * @param[in] table_vnet_entry_id Entry id + * @param[in] table_bitmap_classification_entry_id Entry id * @param[in] number_of_counters Number of counters in the array * @param[in] counter_ids Specifies the array of counter ids * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_clear_table_vnet_entry_stats_fn)( - _In_ sai_object_id_t table_vnet_entry_id, +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); /** - * @brief Create table_tunnel_route_entry + * @brief Create table_bitmap_router_entry * - * @param[out] table_tunnel_route_entry_id Entry id + * @param[out] table_bitmap_router_entry_id Entry id * @param[in] switch_id Switch id * @param[in] attr_count Number of attributes * @param[in] attr_list Array of attributes * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_create_table_tunnel_route_entry_fn)( - _Out_ sai_object_id_t *table_tunnel_route_entry_id, +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); /** - * @brief Remove table_tunnel_route_entry + * @brief Remove table_bitmap_router_entry * - * @param[in] table_tunnel_route_entry_id Entry id + * @param[in] table_bitmap_router_entry_id Entry id * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_remove_table_tunnel_route_entry_fn)( - _In_ sai_object_id_t table_tunnel_route_entry_id); +typedef sai_status_t (*sai_remove_table_bitmap_router_entry_fn)( + _In_ sai_object_id_t table_bitmap_router_entry_id); /** - * @brief Set attribute for table_tunnel_route_entry + * @brief Set attribute for table_bitmap_router_entry * - * @param[in] table_tunnel_route_entry_id Entry id + * @param[in] table_bitmap_router_entry_id Entry id * @param[in] attr Attribute * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_set_table_tunnel_route_entry_attribute_fn)( - _In_ sai_object_id_t table_tunnel_route_entry_id, +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); /** - * @brief Get attribute for table_tunnel_route_entry + * @brief Get attribute for table_bitmap_router_entry * - * @param[in] table_tunnel_route_entry_id Entry id + * @param[in] table_bitmap_router_entry_id Entry id * @param[in] attr_count Number of attributes * @param[inout] attr_list Array of attributes * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_get_table_tunnel_route_entry_attribute_fn)( - _In_ sai_object_id_t table_tunnel_route_entry_id, +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); /** - * @brief Get table_tunnel_route statistics counters. Deprecated for backward compatibility. + * @brief Get table_bitmap_router statistics counters. Deprecated for backward compatibility. * - * @param[in] table_tunnel_route_entry_id Entry id + * @param[in] table_bitmap_router_entry_id Entry id * @param[in] number_of_counters Number of counters in the array * @param[in] counter_ids Specifies the array of counter ids * @param[out] counters Array of resulting counter values. * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_get_table_tunnel_route_entry_stats_fn)( - _In_ sai_object_id_t table_tunnel_route_entry_id, +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); /** - * @brief Get table_tunnel_route statistics counters extended. + * @brief Get table_bitmap_router statistics counters extended. * - * @param[in] table_tunnel_route_entry_id Entry id + * @param[in] table_bitmap_router_entry_id Entry id * @param[in] number_of_counters Number of counters in the array * @param[in] counter_ids Specifies the array of counter ids * @param[in] mode Statistics mode @@ -455,8 +409,8 @@ typedef sai_status_t (*sai_get_table_tunnel_route_entry_stats_fn)( * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_get_table_tunnel_route_entry_stats_ext_fn)( - _In_ sai_object_id_t table_tunnel_route_entry_id, +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, @@ -465,33 +419,33 @@ typedef sai_status_t (*sai_get_table_tunnel_route_entry_stats_ext_fn)( /** * @brief Clear statistics counters. * - * @param[in] table_tunnel_route_entry_id Entry id + * @param[in] table_bitmap_router_entry_id Entry id * @param[in] number_of_counters Number of counters in the array * @param[in] counter_ids Specifies the array of counter ids * * @return #SAI_STATUS_SUCCESS on success Failure status code on error */ -typedef sai_status_t (*sai_clear_table_tunnel_route_entry_stats_fn)( - _In_ sai_object_id_t table_tunnel_route_entry_id, +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); typedef struct _sai_bmtor_api_t { - sai_create_table_vnet_entry_fn create_table_vnet_entry; - sai_remove_table_vnet_entry_fn remove_table_vnet_entry; - sai_set_table_vnet_entry_attribute_fn set_table_vnet_entry_attribute; - sai_get_table_vnet_entry_attribute_fn get_table_vnet_entry_attribute; - sai_get_table_vnet_entry_stats_fn get_table_vnet_entry_stats; - sai_get_table_vnet_entry_stats_ext_fn get_table_vnet_entry_stats_ext; - sai_clear_table_vnet_entry_stats_fn clear_table_vnet_entry_stats; - sai_create_table_tunnel_route_entry_fn create_table_tunnel_route_entry; - sai_remove_table_tunnel_route_entry_fn remove_table_tunnel_route_entry; - sai_set_table_tunnel_route_entry_attribute_fn set_table_tunnel_route_entry_attribute; - sai_get_table_tunnel_route_entry_attribute_fn get_table_tunnel_route_entry_attribute; - sai_get_table_tunnel_route_entry_stats_fn get_table_tunnel_route_entry_stats; - sai_get_table_tunnel_route_entry_stats_ext_fn get_table_tunnel_route_entry_stats_ext; - sai_clear_table_tunnel_route_entry_stats_fn clear_table_tunnel_route_entry_stats; + sai_create_table_bitmap_classification_entry_fn create_table_bitmap_classification_entry; + sai_remove_table_bitmap_classification_entry_fn remove_table_bitmap_classification_entry; + sai_set_table_bitmap_classification_entry_attribute_fn set_table_bitmap_classification_entry_attribute; + sai_get_table_bitmap_classification_entry_attribute_fn get_table_bitmap_classification_entry_attribute; + sai_get_table_bitmap_classification_entry_stats_fn get_table_bitmap_classification_entry_stats; + sai_get_table_bitmap_classification_entry_stats_ext_fn get_table_bitmap_classification_entry_stats_ext; + sai_clear_table_bitmap_classification_entry_stats_fn clear_table_bitmap_classification_entry_stats; + sai_create_table_bitmap_router_entry_fn create_table_bitmap_router_entry; + sai_remove_table_bitmap_router_entry_fn remove_table_bitmap_router_entry; + sai_set_table_bitmap_router_entry_attribute_fn set_table_bitmap_router_entry_attribute; + sai_get_table_bitmap_router_entry_attribute_fn get_table_bitmap_router_entry_attribute; + sai_get_table_bitmap_router_entry_stats_fn get_table_bitmap_router_entry_stats; + sai_get_table_bitmap_router_entry_stats_ext_fn get_table_bitmap_router_entry_stats_ext; + sai_clear_table_bitmap_router_entry_stats_fn clear_table_bitmap_router_entry_stats; } sai_bmtor_api_t; /** From 48c899cc45768748d6c9ea3e4802bb6beb00f652 Mon Sep 17 00:00:00 2001 From: Marian Pritsak Date: Mon, 28 Jan 2019 18:34:42 +0200 Subject: [PATCH 2/3] Change object types for extensions Signed-off-by: Marian Pritsak --- experimental/saitypesextensions.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/experimental/saitypesextensions.h b/experimental/saitypesextensions.h index 742f98fee..8c079878a 100644 --- a/experimental/saitypesextensions.h +++ b/experimental/saitypesextensions.h @@ -36,9 +36,9 @@ typedef enum _sai_object_type_extensions_t { SAI_OBJECT_TYPE_EXTENSIONS_RANGE_START = SAI_OBJECT_TYPE_MAX, - SAI_OBJECT_TYPE_TABLE_VNET_ENTRY = SAI_OBJECT_TYPE_EXTENSIONS_RANGE_START, + SAI_OBJECT_TYPE_TABLE_BITMAP_CLASSIFICATION_ENTRY = SAI_OBJECT_TYPE_EXTENSIONS_RANGE_START, - SAI_OBJECT_TYPE_TABLE_TUNNEL_ROUTE_ENTRY, + SAI_OBJECT_TYPE_TABLE_BITMAP_ROUTER_ENTRY, /* Add new experimental object types above this line */ From a731072ab7494c3a227835f1b1060ed096661c3b Mon Sep 17 00:00:00 2001 From: Marian Pritsak Date: Mon, 28 Jan 2019 18:38:42 +0200 Subject: [PATCH 3/3] [acronyms.txt] Add LPM Signed-off-by: Marian Pritsak --- meta/acronyms.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/acronyms.txt b/meta/acronyms.txt index 3bf185021..73083dd83 100644 --- a/meta/acronyms.txt +++ b/meta/acronyms.txt @@ -45,6 +45,7 @@ L2 - Layer 2 L2MC - Layer 2 Multi Cast L3 - Layer 3 LAG - Link Aggregation Group +LPM - Longest Prefix Match MAC - Medium Access Control MPLS - Multi Protocol Label Switching MTU - Maximum Transmission Unit