examples/l2fwd-crypto: fix stats refresh rate
[dpdk.git] / examples / qos_sched / init.c
index b188c62..8a0fb8a 100644 (file)
@@ -57,11 +57,10 @@ struct flow_conf qos_conf[MAX_DATA_STREAMS];
 
 static struct rte_eth_conf port_conf = {
        .rxmode = {
-               .max_rx_pkt_len = RTE_ETHER_MAX_LEN,
                .split_hdr_size = 0,
        },
        .txmode = {
-               .mq_mode = ETH_DCB_NONE,
+               .mq_mode = RTE_ETH_MQ_TX_NONE,
        },
 };
 
@@ -106,9 +105,9 @@ app_init_port(uint16_t portid, struct rte_mempool *mp)
                        "Error during getting device (port %u) info: %s\n",
                        portid, strerror(-ret));
 
-       if (dev_info.tx_offload_capa & DEV_TX_OFFLOAD_MBUF_FAST_FREE)
+       if (dev_info.tx_offload_capa & RTE_ETH_TX_OFFLOAD_MBUF_FAST_FREE)
                local_port_conf.txmode.offloads |=
-                       DEV_TX_OFFLOAD_MBUF_FAST_FREE;
+                       RTE_ETH_TX_OFFLOAD_MBUF_FAST_FREE;
        ret = rte_eth_dev_configure(portid, 1, 1, &local_port_conf);
        if (ret < 0)
                rte_exit(EXIT_FAILURE,
@@ -184,30 +183,27 @@ static struct rte_sched_pipe_params pipe_profiles[MAX_SCHED_PIPE_PROFILES] = {
                .tc_rate = {305175, 305175, 305175, 305175, 305175, 305175,
                        305175, 305175, 305175, 305175, 305175, 305175, 305175},
                .tc_period = 40,
-#ifdef RTE_SCHED_SUBPORT_TC_OV
                .tc_ov_weight = 1,
-#endif
 
                .wrr_weights = {1, 1, 1, 1},
        },
 };
 
-struct rte_sched_subport_params subport_params[MAX_SCHED_SUBPORTS] = {
+static struct rte_sched_subport_profile_params
+               subport_profile[MAX_SCHED_SUBPORT_PROFILES] = {
        {
                .tb_rate = 1250000000,
                .tb_size = 1000000,
-
                .tc_rate = {1250000000, 1250000000, 1250000000, 1250000000,
                        1250000000, 1250000000, 1250000000, 1250000000, 1250000000,
                        1250000000, 1250000000, 1250000000, 1250000000},
                .tc_period = 10,
-               .n_pipes_per_subport_enabled = 4096,
-               .qsize = {64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64},
-               .pipe_profiles = pipe_profiles,
-               .n_pipe_profiles = sizeof(pipe_profiles) /
-                       sizeof(struct rte_sched_pipe_params),
-               .n_max_pipe_profiles = MAX_SCHED_PIPE_PROFILES,
-#ifdef RTE_SCHED_RED
+       },
+};
+
+#ifdef RTE_SCHED_CMAN
+struct rte_sched_cman_params cman_params = {
+       .cman_mode = RTE_SCHED_CMAN_RED,
        .red_params = {
                /* Traffic Class 0 Colors Green / Yellow / Red */
                [0][0] = {.min_th = 48, .max_th = 64, .maxp_inv = 10, .wq_log2 = 9},
@@ -274,7 +270,20 @@ struct rte_sched_subport_params subport_params[MAX_SCHED_SUBPORTS] = {
                [12][1] = {.min_th = 40, .max_th = 64, .maxp_inv = 10, .wq_log2 = 9},
                [12][2] = {.min_th = 32, .max_th = 64, .maxp_inv = 10, .wq_log2 = 9},
        },
-#endif /* RTE_SCHED_RED */
+};
+#endif /* RTE_SCHED_CMAN */
+
+struct rte_sched_subport_params subport_params[MAX_SCHED_SUBPORTS] = {
+       {
+               .n_pipes_per_subport_enabled = 4096,
+               .qsize = {64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64},
+               .pipe_profiles = pipe_profiles,
+               .n_pipe_profiles = sizeof(pipe_profiles) /
+                       sizeof(struct rte_sched_pipe_params),
+               .n_max_pipe_profiles = MAX_SCHED_PIPE_PROFILES,
+#ifdef RTE_SCHED_CMAN
+               .cman_params = &cman_params,
+#endif /* RTE_SCHED_CMAN */
        },
 };
 
@@ -285,6 +294,9 @@ struct rte_sched_port_params port_params = {
        .mtu = 6 + 6 + 4 + 4 + 2 + 1500,
        .frame_overhead = RTE_SCHED_FRAME_OVERHEAD_DEFAULT,
        .n_subports_per_port = 1,
+       .n_subport_profiles = 1,
+       .subport_profiles = subport_profile,
+       .n_max_subport_profiles = MAX_SCHED_SUBPORT_PROFILES,
        .n_pipes_per_subport = MAX_SCHED_PIPES,
 };
 
@@ -315,10 +327,11 @@ app_init_sched_port(uint32_t portid, uint32_t socketid)
 
        for (subport = 0; subport < port_params.n_subports_per_port; subport ++) {
                err = rte_sched_subport_config(port, subport,
-                               &subport_params[subport], 0);
+                               &subport_params[subport],
+                               0);
                if (err) {
-                       rte_exit(EXIT_FAILURE, "Unable to config sched subport %u, err=%d\n",
-                                       subport, err);
+                       rte_exit(EXIT_FAILURE, "Unable to config sched "
+                                "subport %u, err=%d\n", subport, err);
                }
 
                uint32_t n_pipes_per_subport =
@@ -351,6 +364,7 @@ app_load_cfg_profile(const char *profile)
 
        cfg_load_port(file, &port_params);
        cfg_load_subport(file, subport_params);
+       cfg_load_subport_profile(file, subport_profile);
        cfg_load_pipe(file, pipe_profiles);
 
        rte_cfgfile_close(file);