.tx_rs_thresh = 32, /* Use PMD default values */
};
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+static struct rte_sched_subport_profile_params subport_profile_params_default = {
+ .tb_rate = TEN_GIGABIT / NB_PIPES,
+ .tb_size = 4000000,
+
+ .tc_rate = {TEN_GIGABIT / NB_PIPES, TEN_GIGABIT / NB_PIPES, TEN_GIGABIT / NB_PIPES, TEN_GIGABIT / NB_PIPES},
+ .tc_period = 40,
+};
+#endif
+
static struct rte_sched_port_params port_params_default = {
.name = "port_0",
.socket = 0,
.rate = 0,
.frame_overhead = RTE_SCHED_FRAME_OVERHEAD_DEFAULT,
.n_subports_per_port = 1,
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ .subport_profiles = &subport_profile_params_default,
+#endif
.n_pipes_per_subport = NB_PIPES,
#if RTE_VERSION < RTE_VERSION_NUM(19,11,0,0)
.qsize = {QUEUE_SIZES, QUEUE_SIZES, QUEUE_SIZES, QUEUE_SIZES},
};
static struct rte_sched_subport_params subport_params_default = {
+#if RTE_VERSION < RTE_VERSION_NUM(20,11,0,0)
.tb_rate = TEN_GIGABIT,
.tb_size = 4000000,
.tc_rate = {TEN_GIGABIT, TEN_GIGABIT, TEN_GIGABIT, TEN_GIGABIT},
.tc_period = 40, /* default was 10 */
+#endif
#if RTE_VERSION > RTE_VERSION_NUM(19,11,0,0)
.qsize = {QUEUE_SIZES, QUEUE_SIZES, QUEUE_SIZES, QUEUE_SIZES},
.pipe_profiles = NULL,
return 0;
}
if (STR_EQ(str, "subport tb rate")) {
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ return parse_u64(&targ->qos_conf.port_params.subport_profiles->tb_rate, pkey);
+#else
#if RTE_VERSION > RTE_VERSION_NUM(19,11,0,0)
return parse_u64(&targ->qos_conf.subport_params[0].tb_rate, pkey);
#else
return parse_int(&targ->qos_conf.subport_params[0].tb_rate, pkey);
+#endif
#endif
}
if (STR_EQ(str, "subport tb size")) {
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ return parse_u64(&targ->qos_conf.port_params.subport_profiles->tb_size, pkey);
+#else
#if RTE_VERSION > RTE_VERSION_NUM(19,11,0,0)
return parse_u64(&targ->qos_conf.subport_params[0].tb_size, pkey);
#else
return parse_int(&targ->qos_conf.subport_params[0].tb_size, pkey);
+#endif
#endif
}
if (STR_EQ(str, "subport tc 0 rate")) {
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ return parse_u64(&targ->qos_conf.port_params.subport_profiles->tc_rate[0], pkey);
+#else
#if RTE_VERSION > RTE_VERSION_NUM(19,11,0,0)
return parse_u64(&targ->qos_conf.subport_params[0].tc_rate[0], pkey);
#else
return parse_int(&targ->qos_conf.subport_params[0].tc_rate[0], pkey);
+#endif
#endif
}
if (STR_EQ(str, "subport tc 1 rate")) {
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ return parse_u64(&targ->qos_conf.port_params.subport_profiles->tc_rate[1], pkey);
+#else
#if RTE_VERSION > RTE_VERSION_NUM(19,11,0,0)
return parse_u64(&targ->qos_conf.subport_params[0].tc_rate[1], pkey);
#else
return parse_int(&targ->qos_conf.subport_params[0].tc_rate[1], pkey);
+#endif
#endif
}
if (STR_EQ(str, "subport tc 2 rate")) {
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ return parse_u64(&targ->qos_conf.port_params.subport_profiles->tc_rate[2], pkey);
+#else
#if RTE_VERSION > RTE_VERSION_NUM(19,11,0,0)
return parse_u64(&targ->qos_conf.subport_params[0].tc_rate[2], pkey);
#else
return parse_int(&targ->qos_conf.subport_params[0].tc_rate[2], pkey);
+#endif
#endif
}
if (STR_EQ(str, "subport tc 3 rate")) {
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ return parse_u64(&targ->qos_conf.port_params.subport_profiles->tc_rate[3], pkey);
+#else
#if RTE_VERSION > RTE_VERSION_NUM(19,11,0,0)
return parse_u64(&targ->qos_conf.subport_params[0].tc_rate[3], pkey);
#else
return parse_int(&targ->qos_conf.subport_params[0].tc_rate[3], pkey);
+#endif
#endif
}
return -1;
}
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ targ->qos_conf.port_params.subport_profiles->tc_rate[0] = val;
+ targ->qos_conf.port_params.subport_profiles->tc_rate[1] = val;
+ targ->qos_conf.port_params.subport_profiles->tc_rate[2] = val;
+ targ->qos_conf.port_params.subport_profiles->tc_rate[3] = val;
+#else
targ->qos_conf.subport_params[0].tc_rate[0] = val;
targ->qos_conf.subport_params[0].tc_rate[1] = val;
targ->qos_conf.subport_params[0].tc_rate[2] = val;
targ->qos_conf.subport_params[0].tc_rate[3] = val;
+#endif
return 0;
}
if (STR_EQ(str, "subport tc period")) {
+#if RTE_VERSION >= RTE_VERSION_NUM(20,11,0,0)
+ return parse_u64(&targ->qos_conf.port_params.subport_profiles->tc_period, pkey);
+#else
#if RTE_VERSION > RTE_VERSION_NUM(19,11,0,0)
return parse_u64(&targ->qos_conf.subport_params[0].tc_period, pkey);
#else
return parse_int(&targ->qos_conf.subport_params[0].tc_period, pkey);
+#endif
#endif
}
if (STR_EQ(str, "pipe tb rate")) {