1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2010-2018 Intel Corporation
5 #ifndef _INCLUDE_TMGR_H_
6 #define _INCLUDE_TMGR_H_
11 #include <rte_sched.h>
16 #ifndef TMGR_PIPE_SUBPORT_MAX
17 #define TMGR_PIPE_SUBPORT_MAX 4096
20 #ifndef TMGR_SUBPORT_PROFILE_MAX
21 #define TMGR_SUBPORT_PROFILE_MAX 256
24 #ifndef TMGR_PIPE_PROFILE_MAX
25 #define TMGR_PIPE_PROFILE_MAX 256
29 TAILQ_ENTRY(tmgr_port) node;
31 struct rte_sched_port *s;
32 uint32_t n_subports_per_port;
33 uint32_t n_pipes_per_subport;
36 TAILQ_HEAD(tmgr_port_list, tmgr_port);
42 tmgr_port_find(const char *name);
44 struct tmgr_port_params {
46 uint32_t n_subports_per_port;
47 uint32_t n_pipes_per_subport;
48 uint32_t frame_overhead;
54 tmgr_subport_profile_add(struct rte_sched_subport_profile_params *sp);
57 tmgr_pipe_profile_add(struct rte_sched_pipe_params *p);
60 tmgr_port_create(const char *name, struct tmgr_port_params *params);
63 tmgr_subport_config(const char *port_name,
65 uint32_t subport_profile_id);
68 tmgr_pipe_config(const char *port_name,
70 uint32_t pipe_id_first,
71 uint32_t pipe_id_last,
72 uint32_t pipe_profile_id);
74 #endif /* _INCLUDE_TMGR_H_ */