Mellanox SwitchX SDK API Guide  4.3.2104
sx_api_fcf.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 
19 #ifndef __SX_API_FCF_H__
20 #define __SX_API_FCF_H__
21 
22 #include <sx/sdk/sx_api.h>
23 #include <sx/sdk/sx_strings.h>
24 
40 sx_status_t sx_api_fcf_log_verbosity_level(sx_api_handle_t handle,
41  sx_access_cmd_t cmd,
42  sx_log_verbosity_target_t verbosity_target,
43  sx_verbosity_level_t *module_verbosity_level_p,
44  sx_verbosity_level_t *api_verbosity_level_p);
45 
61 sx_status_t sx_api_fcf_init(const sx_api_handle_t handle,
62  const sx_fcf_param_t *params);
63 
76 sx_status_t sx_api_fcf_deinit(const sx_api_handle_t handle);
77 
104 sx_status_t sx_api_fcf_set(const sx_api_handle_t handle,
105  const sx_access_cmd_t cmd,
106  const sx_fcf_attributes_t *fcf_attr,
107  sx_fcf_id_t *fcf);
108 
126 sx_status_t sx_api_fcf_get(const sx_api_handle_t handle,
127  const sx_access_cmd_t cmd,
128  sx_fcf_id_t *fcf,
129  sx_fcf_attributes_t *fcf_attr);
130 
151 sx_status_t sx_api_fcf_v_port_interface_set(const sx_api_handle_t handle,
152  const sx_access_cmd_t cmd,
153  const sx_fcf_id_t fcf,
154  const sx_fcf_v_port_attributes_t *v_port_attr,
155  sx_fcf_v_port_handle_t * v_port_handle);
156 
183 sx_status_t sx_api_fcf_ipl_set(const sx_api_handle_t handle,
184  const sx_access_cmd_t cmd,
185  const sx_port_log_id_t port_list[],
186  const length_t log_port_num);
187 
208 sx_status_t sx_api_fcf_ipl_get(const sx_api_handle_t handle,
209  sx_port_log_id_t port_list[],
210  length_t * log_port_num);
211 
231 sx_status_t sx_api_fcf_v_port_interface_get(const sx_api_handle_t handle,
232  const sx_access_cmd_t cmd,
233  sx_fcf_v_port_handle_t * v_port_handle,
234  sx_fcf_id_t * fcf,
235  sx_fcf_v_port_attributes_t *v_port_attr);
236 
260 sx_status_t sx_api_fcf_forwarding_set(const sx_api_handle_t handle,
261  const sx_access_cmd_t cmd,
262  const sx_fcf_id_t fcf,
263  const sx_fc_addr_t *did,
264  const sx_fc_addr_t *did_mask,
265  const sx_fc_addr_t *sid,
266  const sx_fc_addr_t *sid_mask,
267  const sx_fcf_v_port_handle_t v_port_handle);
268 
292 sx_status_t sx_api_fcf_forwarding_get(const sx_api_handle_t handle,
293  sx_access_cmd_t access_cmd,
294  const sx_fcf_id_t fcf,
295  sx_fc_addr_t *did,
296  sx_fc_addr_t *did_mask,
297  sx_fc_addr_t *sid,
298  sx_fc_addr_t *sid_mask,
299  sx_fcf_v_port_handle_t *v_port_handle);
300 
318 sx_status_t sx_api_fcf_cntr_alloc_set(const sx_api_handle_t handle,
319  const sx_access_cmd_t cmd,
320  sx_fcf_cntr_id_t *cntr);
321 
341 sx_status_t sx_api_fcf_cntr_bind_set(const sx_api_handle_t handle,
342  const sx_access_cmd_t cmd,
343  const sx_fcf_cntr_id_t cntr,
344  const sx_fcf_v_port_handle_t v_port_handle);
345 
363 sx_status_t sx_api_fcf_cntr_bind_get(const sx_api_handle_t handle,
364  const sx_fcf_cntr_id_t cntr,
365  sx_fcf_v_port_handle_t *v_port_handle);
366 
384 sx_status_t sx_api_fcf_cntr_get(const sx_api_handle_t handle,
385  const sx_fcf_cntr_id_t cntr,
386  sx_fcf_cntr_set_t *cntr_set);
387 
405 sx_status_t sx_api_fcf_cntr_clear_set(const sx_api_handle_t handle,
406  const sx_fcf_cntr_id_t cntr,
407  const boolean_t all);
408 
409 #endif /* __SX_API_FCF_H__ */
sx_api_fcf_v_port_interface_get
sx_status_t sx_api_fcf_v_port_interface_get(const sx_api_handle_t handle, const sx_access_cmd_t cmd, sx_fcf_v_port_handle_t *v_port_handle, sx_fcf_id_t *fcf, sx_fcf_v_port_attributes_t *v_port_attr)
sx_api_fcf_cntr_bind_set
sx_status_t sx_api_fcf_cntr_bind_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_fcf_cntr_id_t cntr, const sx_fcf_v_port_handle_t v_port_handle)
sx_api_fcf_v_port_interface_set
sx_status_t sx_api_fcf_v_port_interface_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_fcf_id_t fcf, const sx_fcf_v_port_attributes_t *v_port_attr, sx_fcf_v_port_handle_t *v_port_handle)
sx_api_fcf_ipl_set
sx_status_t sx_api_fcf_ipl_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_port_log_id_t port_list[], const length_t log_port_num)
sx_api_fcf_set
sx_status_t sx_api_fcf_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_fcf_attributes_t *fcf_attr, sx_fcf_id_t *fcf)
sx_api_fcf_forwarding_set
sx_status_t sx_api_fcf_forwarding_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, const sx_fcf_id_t fcf, const sx_fc_addr_t *did, const sx_fc_addr_t *did_mask, const sx_fc_addr_t *sid, const sx_fc_addr_t *sid_mask, const sx_fcf_v_port_handle_t v_port_handle)
sx_api_fcf_log_verbosity_level
sx_status_t sx_api_fcf_log_verbosity_level(sx_api_handle_t handle, sx_access_cmd_t cmd, sx_log_verbosity_target_t verbosity_target, sx_verbosity_level_t *module_verbosity_level_p, sx_verbosity_level_t *api_verbosity_level_p)
sx_api_fcf_cntr_bind_get
sx_status_t sx_api_fcf_cntr_bind_get(const sx_api_handle_t handle, const sx_fcf_cntr_id_t cntr, sx_fcf_v_port_handle_t *v_port_handle)
sx_api_fcf_ipl_get
sx_status_t sx_api_fcf_ipl_get(const sx_api_handle_t handle, sx_port_log_id_t port_list[], length_t *log_port_num)
sx_api_fcf_cntr_get
sx_status_t sx_api_fcf_cntr_get(const sx_api_handle_t handle, const sx_fcf_cntr_id_t cntr, sx_fcf_cntr_set_t *cntr_set)
sx_api_fcf_deinit
sx_status_t sx_api_fcf_deinit(const sx_api_handle_t handle)
sx_api_fcf_init
sx_status_t sx_api_fcf_init(const sx_api_handle_t handle, const sx_fcf_param_t *params)
sx_api_fcf_cntr_alloc_set
sx_status_t sx_api_fcf_cntr_alloc_set(const sx_api_handle_t handle, const sx_access_cmd_t cmd, sx_fcf_cntr_id_t *cntr)
sx_api_fcf_get
sx_status_t sx_api_fcf_get(const sx_api_handle_t handle, const sx_access_cmd_t cmd, sx_fcf_id_t *fcf, sx_fcf_attributes_t *fcf_attr)
sx_api_fcf_cntr_clear_set
sx_status_t sx_api_fcf_cntr_clear_set(const sx_api_handle_t handle, const sx_fcf_cntr_id_t cntr, const boolean_t all)
sx_api_fcf_forwarding_get
sx_status_t sx_api_fcf_forwarding_get(const sx_api_handle_t handle, sx_access_cmd_t access_cmd, const sx_fcf_id_t fcf, sx_fc_addr_t *did, sx_fc_addr_t *did_mask, sx_fc_addr_t *sid, sx_fc_addr_t *sid_mask, sx_fcf_v_port_handle_t *v_port_handle)