Mellanox SwitchX SDK API Guide  4.3.2104
sx_api_rm.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2014-2019. Mellanox Technologies, Ltd. ALL RIGHTS RESERVED.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License"); you may
5  * not use this file except in compliance with the License. You may obtain
6  * a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
7  *
8  * THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR
9  * CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT
10  * LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS
11  * FOR A PARTICULAR PURPOSE, MERCHANTABLITY OR NON-INFRINGEMENT.
12  *
13  * See the Apache Version 2.0 License for specific language governing
14  * permissions and limitations under the License.
15  *
16  */
17 
18 #ifndef __SX_API_RM_H__
19 #define __SX_API_RM_H__
20 
21 #include <sx/sdk/sx_api.h>
22 #include <sx/sdk/sx_strings.h>
23 
24 
25 /***********************************************
26 * API functions
27 ***********************************************/
28 
46 sx_status_t sx_api_rm_sdk_table_thresholds_set(const sx_api_handle_t handle,
47  const sx_access_cmd_t access_cmd,
48  const rm_sdk_table_type_e resource,
49  const sx_notification_threshold_t threshold_full,
50  const sx_notification_threshold_t threshold_empty);
51 
68 sx_status_t sx_api_rm_sdk_table_thresholds_get(const sx_api_handle_t handle,
69  const rm_sdk_table_type_e resource,
70  sx_notification_threshold_t *threshold_full,
71  sx_notification_threshold_t *threshold_empty);
72 
91 sx_status_t sx_api_rm_hw_table_thresholds_set(const sx_api_handle_t handle,
92  const sx_access_cmd_t access_cmd,
93  const rm_hw_table_type_e resource,
94  const sx_notification_threshold_t threshold_full,
95  const sx_notification_threshold_t threshold_empty);
96 
113 sx_status_t sx_api_rm_hw_table_thresholds_get(const sx_api_handle_t handle,
114  const rm_hw_table_type_e resource,
115  sx_notification_threshold_t *threshold_full,
116  sx_notification_threshold_t *threshold_empty);
117 
139 sx_status_t sx_api_rm_entries_duplication_set(const sx_api_handle_t handle,
140  const sx_api_table_type_t resource,
141  const sx_sdk_table_duplication_param_t *param_p);
142 
160 sx_status_t sx_api_rm_entries_duplication_get(const sx_api_handle_t handle,
161  const sx_api_table_type_t resource,
162  sx_sdk_table_duplication_param_t *param_p);
163 
164 
182 sx_status_t sx_api_rm_sdk_table_utilization_get(const sx_api_handle_t handle,
183  sx_api_table_type_t * resource_list_p,
184  uint32_t *list_count_p,
185  sx_api_rm_table_utilization_t *utilization_list_p);
186 
187 
204 sx_status_t sx_api_rm_hw_utilization_get(const sx_api_handle_t handle,
205  sx_api_hw_table_type_t hw_type,
206  uint32_t * utilization_p);
207 
208 
227 sx_status_t sx_api_rm_free_entries_by_type_get(const sx_api_handle_t handle,
228  const sx_api_table_type_t resource,
229  uint32_t *free_cnt_p);
230 
231 
232 #endif /* __SX_API_RM_H__ */
sx_api_rm_entries_duplication_set
sx_status_t sx_api_rm_entries_duplication_set(const sx_api_handle_t handle, const sx_api_table_type_t resource, const sx_sdk_table_duplication_param_t *param_p)
sx_api_rm_hw_table_thresholds_get
sx_status_t sx_api_rm_hw_table_thresholds_get(const sx_api_handle_t handle, const rm_hw_table_type_e resource, sx_notification_threshold_t *threshold_full, sx_notification_threshold_t *threshold_empty)
sx_api_rm_sdk_table_thresholds_set
sx_status_t sx_api_rm_sdk_table_thresholds_set(const sx_api_handle_t handle, const sx_access_cmd_t access_cmd, const rm_sdk_table_type_e resource, const sx_notification_threshold_t threshold_full, const sx_notification_threshold_t threshold_empty)
sx_api_rm_hw_table_thresholds_set
sx_status_t sx_api_rm_hw_table_thresholds_set(const sx_api_handle_t handle, const sx_access_cmd_t access_cmd, const rm_hw_table_type_e resource, const sx_notification_threshold_t threshold_full, const sx_notification_threshold_t threshold_empty)
sx_api_rm_sdk_table_thresholds_get
sx_status_t sx_api_rm_sdk_table_thresholds_get(const sx_api_handle_t handle, const rm_sdk_table_type_e resource, sx_notification_threshold_t *threshold_full, sx_notification_threshold_t *threshold_empty)
sx_api_rm_entries_duplication_get
sx_status_t sx_api_rm_entries_duplication_get(const sx_api_handle_t handle, const sx_api_table_type_t resource, sx_sdk_table_duplication_param_t *param_p)
sx_api_rm_sdk_table_utilization_get
sx_status_t sx_api_rm_sdk_table_utilization_get(const sx_api_handle_t handle, sx_api_table_type_t *resource_list_p, uint32_t *list_count_p, sx_api_rm_table_utilization_t *utilization_list_p)
sx_api_rm_hw_utilization_get
sx_status_t sx_api_rm_hw_utilization_get(const sx_api_handle_t handle, sx_api_hw_table_type_t hw_type, uint32_t *utilization_p)
sx_api_rm_free_entries_by_type_get
sx_status_t sx_api_rm_free_entries_by_type_get(const sx_api_handle_t handle, const sx_api_table_type_t resource, uint32_t *free_cnt_p)