18 #ifndef __SX_API_COS_H__ 19 #define __SX_API_COS_H__ 21 #include <sx/sdk/sx_api.h> 22 #include <sx/sdk/sx_cos_redecn.h> 23 #include <sx/sdk/sx_strings.h> 43 const sx_log_verbosity_target_t verbosity_target,
44 const sx_verbosity_level_t module_verbosity_level,
45 const sx_verbosity_level_t api_verbosity_level);
61 const sx_log_verbosity_target_t verbosity_target,
62 sx_verbosity_level_t *module_verbosity_level_p,
63 sx_verbosity_level_t *api_verbosity_level_p);
84 const sx_port_log_id_t log_port,
85 const sx_cos_priority_t priority);
101 const sx_port_log_id_t log_port,
102 sx_cos_priority_t *priority_p);
123 const sx_port_log_id_t log_port,
124 const sx_cos_priority_t source_priority,
125 const sx_cos_priority_t regenerated_priority);
142 const sx_port_log_id_t log_port,
143 const sx_cos_priority_t source_priority,
144 sx_cos_priority_t *regen_priority_p);
184 const sx_access_cmd_t cmd,
185 const sx_port_log_id_t log_port,
186 const sx_cos_priority_t priority,
187 const sx_cos_traffic_class_t traffic_class);
204 const sx_port_log_id_t log_port,
205 const sx_cos_priority_t priority,
206 sx_cos_traffic_class_t *traffic_class_p);
237 const sx_port_log_id_t log_port,
238 const sx_cos_trust_level_t trust_level);
256 const sx_port_log_id_t log_port,
257 sx_cos_trust_level_t *trust_level_p);
278 const sx_cos_dscp_t dscp,
279 const sx_cos_priority_t priority);
298 const sx_cos_dscp_t dscp,
299 sx_cos_priority_t *priority_p);
319 const sx_port_log_id_t log_port,
320 const sx_cos_tc_config_params_t *tc_config_p,
321 const uint32_t tc_config_cnt);
339 const sx_port_log_id_t log_port,
340 sx_cos_tc_config_params_t *tc_config_p,
341 const uint32_t tc_config_cnt);
359 const sx_port_log_id_t log_port,
360 const sx_cos_port_ets_gen_config_params_t *port_config_p);
377 const sx_port_log_id_t log_port,
378 sx_cos_port_ets_gen_config_params_t *port_config_p);
407 const sx_access_cmd_t cmd,
408 const sx_port_log_id_t log_port,
409 const sx_cos_timer_value_t xof_timer_value,
410 const sx_cos_timer_value_t xof_refresh,
411 const sx_cos_port_buff_params_t *buffer_list_p);
431 const sx_port_log_id_t log_port,
432 sx_cos_timer_value_t *xof_timer_value_p,
433 sx_cos_timer_value_t *xof_refresh_p,
434 sx_cos_port_buff_size_t *total_buffer_size_p,
435 sx_cos_port_buff_params_t *buffer_list_p);
455 const sx_access_cmd_t cmd,
456 const sx_port_log_id_t log_port,
457 sx_cos_port_prio_buff_t *prio_to_buff_p);
472 const sx_port_log_id_t log_port,
473 sx_cos_port_prio_buff_t *prio_to_buff_p);
490 const sx_port_log_id_t log_port,
491 const sx_cos_priority_t priority,
492 const sx_cos_port_qcn_mode_t qcn_mode);
509 const sx_port_log_id_t log_port,
510 const sx_cos_priority_t priority,
511 sx_cos_port_qcn_mode_t *qcn_mode_p);
530 const sx_port_log_id_t log_port,
531 const sx_cos_priority_t priority,
532 const boolean_t qcn_enable);
551 const sx_port_log_id_t log_port,
552 const sx_cos_priority_t priority,
553 boolean_t *qcn_enable_p);
570 const sx_port_log_id_t log_port,
571 const sx_cos_priority_t priority,
572 sx_cos_qcn_cpid_t *cpid_p);
589 const sx_access_cmd_t cmd,
590 const sx_cos_qcn_profile_params_t *params_p,
591 sx_cos_qcn_profile_id_t *profile_id_p);
607 const sx_cos_qcn_profile_id_t profile_id,
608 sx_cos_qcn_profile_params_t *params_p);
625 const sx_access_cmd_t cmd,
626 const sx_port_log_id_t log_port,
627 const sx_cos_qcn_profile_id_t profile_id);
643 const sx_port_log_id_t log_port,
644 sx_cos_qcn_profile_id_t *profile_id_p);
661 const sx_swid_t swid,
662 const sx_cos_qcn_params_t *params_p);
679 const sx_swid_t swid,
680 sx_cos_qcn_params_t *params_p);
696 const sx_access_cmd_t cmd,
697 sx_cos_pool_attr_t *sx_cos_pool_attr,
713 const uint32_t pool_id,
714 sx_cos_pool_attr_t * sx_cos_pool_attr_p);
736 const sx_access_cmd_t cmd,
737 const sx_port_log_id_t log_port,
738 const sx_cos_port_buffer_attr_t *port_buffer_attr_list_p,
739 const uint32_t port_buffer_attr_cnt);
755 const sx_port_log_id_t log_port,
756 sx_cos_port_buffer_attr_t *port_buffer_attr_list_p,
757 uint32_t *port_buffer_attr_cnt);
779 const sx_access_cmd_t cmd,
780 const sx_port_log_id_t log_port,
781 const sx_cos_port_shared_buffer_attr_t *port_shared_buffer_attr_list_p,
782 const uint32_t port_shared_buffer_attr_cnt);
798 const sx_port_log_id_t log_port,
799 sx_cos_port_shared_buffer_attr_t *port_shared_buffer_attr_list_p,
800 uint32_t *port_shared_buffer_attr_cnt);
814 sx_buffer_status_t *status);
830 sx_cos_pool_id_t *pool_list_p);
848 const sx_access_cmd_t cmd,
849 const sx_port_statistic_usage_params_t *statistic_param_list_p,
850 const uint32_t statistics_cnt,
851 sx_port_occupancy_statistics_t * usage_list_p,
852 uint32_t * usage_cnt);
869 const sx_access_cmd_t cmd,
870 const sx_cos_pool_id_t *pool_id_list_p,
871 const uint32_t pool_id_cnt,
872 sx_cos_pool_occupancy_statistics_t *usage_list_p);
889 const sx_port_log_id_t log_port,
890 const sx_cos_color_t color);
906 const sx_port_log_id_t log_port,
907 sx_cos_color_t *color_p);
924 const sx_port_log_id_t log_port,
925 const sx_cos_pcp_dei_t pcp_dei);
941 const sx_port_log_id_t log_port,
942 sx_cos_pcp_dei_t *pcp_dei_p);
960 const sx_port_log_id_t log_port,
961 const sx_cos_pcp_dei_t *pcp_dei_p,
962 const sx_cos_priority_color_t *switch_priority_color_p,
963 const uint32_t element_cnt);
980 const sx_port_log_id_t log_port,
981 sx_cos_pcp_dei_t *pcp_dei_p,
982 sx_cos_priority_color_t *switch_priority_color_p,
983 uint32_t *element_cnt_p);
1003 const sx_cos_priority_t *switch_priority_p,
1004 const sx_cos_ieee_prio_t *ieee_priority_p,
1005 const uint32_t element_cnt);
1021 sx_cos_priority_t *switch_priority_p,
1022 sx_cos_ieee_prio_t *ieee_priority_p,
1023 uint32_t *element_cnt_p);
1042 const sx_port_log_id_t log_port,
1043 const sx_cos_exp_t *exp_p,
1044 const sx_cos_priority_color_t *switch_priority_color_p,
1045 const sx_cos_ecn_t *ecn_p,
1046 const uint32_t element_cnt);
1064 const sx_port_log_id_t log_port,
1065 sx_cos_exp_t *exp_p,
1066 sx_cos_priority_color_t *switch_priority_color_p,
1067 sx_cos_ecn_t *ecn_p,
1068 uint32_t *element_cnt_p);
1087 const sx_port_log_id_t log_port,
1088 const sx_cos_dscp_t *dscp_p,
1089 const sx_cos_priority_color_t *switch_priority_color_p,
1090 const uint32_t element_cnt);
1107 const sx_port_log_id_t log_port,
1108 sx_cos_dscp_t *dscp_p,
1109 sx_cos_priority_color_t *switch_priority_color_p,
1110 uint32_t *element_cnt_p);
1128 const sx_port_log_id_t log_port,
1129 const sx_cos_rewrite_enable_t rewrite);
1145 const sx_port_log_id_t log_port,
1146 sx_cos_rewrite_enable_t *rewrite_p);
1167 const sx_port_log_id_t log_port,
1168 const sx_cos_priority_color_t *switch_priority_color_p,
1169 const sx_cos_pcp_dei_t *pcp_dei_p,
1170 const uint32_t element_cnt);
1189 const sx_port_log_id_t log_port,
1190 sx_cos_priority_color_t *switch_priority_color_p,
1191 sx_cos_pcp_dei_t *pcp_dei_p,
1192 uint32_t *element_cnt_p);
1213 const sx_port_log_id_t log_port,
1214 const sx_cos_priority_color_t *switch_priority_color_p,
1215 const sx_cos_dscp_t *dscp_p,
1216 const uint32_t element_cnt);
1234 const sx_port_log_id_t log_port,
1235 sx_cos_priority_color_t *switch_priority_color_p,
1236 sx_cos_dscp_t *dscp_p,
1237 uint32_t *element_cnt_p);
1259 const sx_port_log_id_t log_port,
1260 const sx_cos_priority_color_t *switch_priority_color_p,
1261 const sx_cos_ecn_t *ecn_p,
1262 const sx_cos_exp_t *exp_p,
1263 const uint32_t element_cnt);
1281 const sx_port_log_id_t log_port,
1282 sx_cos_priority_color_t *switch_priority_color_p,
1283 sx_cos_ecn_t *ecn_p,
1284 sx_cos_exp_t *exp_p,
1285 uint32_t *element_cnt_p);
1301 const sx_access_cmd_t cmd,
1302 sx_cos_ets_ptp_port_speed_e port_speed,
1303 sx_cos_ets_ptp_shaper_params_t shaper_params);
1319 const sx_access_cmd_t cmd,
1320 sx_cos_ets_ptp_port_speed_e port_speed,
1321 sx_cos_ets_ptp_shaper_params_t *shaper_params);
1342 const sx_access_cmd_t cmd,
1343 const sx_port_log_id_t log_port,
1344 const sx_cos_ets_element_config_t *ets_element_p,
1345 const uint32_t element_cnt);
1361 const sx_port_log_id_t log_port,
1362 sx_cos_ets_element_config_t *ets_element_p,
1363 uint32_t *element_cnt_p);
1381 const sx_port_log_id_t log_port,
1382 const boolean_t mc_aware);
1397 const sx_port_log_id_t log_port,
1398 boolean_t *mc_aware_p);
1414 const sx_log_verbosity_target_t verbosity_target,
1415 const sx_verbosity_level_t module_verbosity_level,
1416 const sx_verbosity_level_t api_verbosity_level);
1432 const sx_log_verbosity_target_t verbosity_target,
1433 sx_verbosity_level_t *module_verbosity_level_p,
1434 sx_verbosity_level_t *api_verbosity_level_p);
1449 const sx_cos_redecn_global_t *configuration_p);
1465 sx_cos_redecn_global_t *configuration_p);
1486 const sx_access_cmd_t cmd,
1487 const sx_cos_redecn_profile_attributes_t *params_p,
1488 sx_cos_redecn_profile_t *profile_p);
1505 const sx_cos_redecn_profile_t profile,
1506 sx_cos_redecn_profile_attributes_t *params_p);
1524 const sx_port_log_id_t log_port,
1525 const sx_cos_traffic_class_t *traffic_classes_p,
1526 const uint8_t traffic_classes_cnt,
1527 const sx_cos_redecn_enable_params_t *params_p);
1544 const sx_port_log_id_t log_port,
1545 const sx_cos_traffic_class_t traffic_class,
1546 sx_cos_redecn_enable_params_t *params_p);
1567 const sx_port_log_id_t log_port,
1568 const sx_access_cmd_t cmd,
1569 const sx_cos_traffic_class_t *traffic_classes_p,
1570 const uint8_t traffic_classes_cnt,
1571 const sx_cos_redecn_flow_type_e flow_type,
1572 const sx_cos_redecn_bind_params_t *params_p);
1591 const sx_port_log_id_t log_port,
1592 const sx_cos_traffic_class_t traffic_class,
1593 const sx_cos_redecn_flow_type_e flow_type,
1594 sx_cos_redecn_bind_params_t *params_p);
1611 const boolean_t enabled,
1612 const sx_port_log_id_t log_port,
1613 sx_cos_redecn_rate_based_params_t *params_p);
1629 const sx_port_log_id_t log_port,
1630 sx_cos_redecn_rate_based_params_t *params_p,
1631 boolean_t *enabled_p);
1648 const sx_access_cmd_t cmd,
1649 const sx_port_log_id_t ingress_port,
1650 const sx_span_session_id_t span_session_id);
1666 const sx_port_log_id_t ingress_port,
1667 boolean_t *enabled_p);
1683 const sx_access_cmd_t cmd,
1684 const sx_port_log_id_t log_port,
1685 sx_cos_redecn_port_counters_t *counters_p);
1706 const sx_access_cmd_t cmd,
1707 const sx_port_log_id_t log_port,
1708 const sx_cos_traffic_class_t *tc_list_p,
1709 const uint8_t tc_list_cnt,
1710 sx_port_cntr_t *red_counter_p);
1726 const sx_access_cmd_t cmd,
1727 const sx_port_log_id_t log_port,
1728 sx_port_cntr_t *ecn_counters_p);
1743 const boolean_t enabled);
1757 const boolean_t *enabled_p);
1773 sx_cos_buff_consumption_t *buff_consumption_p);