1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright(c) 2010-2014 Intel Corporation 3 */ 4 5 #ifndef __INCLUDE_RTE_PORT_SCHED_H__ 6 #define __INCLUDE_RTE_PORT_SCHED_H__ 7 8 /** 9 * @file 10 * RTE Port Hierarchical Scheduler 11 * 12 * sched_reader: input port built on top of pre-initialized rte_sched_port 13 * sched_writer: output port built on top of pre-initialized rte_sched_port 14 */ 15 16 #include <stdint.h> 17 18 #include <rte_sched.h> 19 20 #include "rte_port.h" 21 22 #ifdef __cplusplus 23 extern "C" { 24 #endif 25 26 /** sched_reader port parameters */ 27 struct rte_port_sched_reader_params { 28 /** Underlying pre-initialized rte_sched_port */ 29 struct rte_sched_port *sched; 30 }; 31 32 /** sched_reader port operations */ 33 extern struct rte_port_in_ops rte_port_sched_reader_ops; 34 35 /** sched_writer port parameters */ 36 struct rte_port_sched_writer_params { 37 /** Underlying pre-initialized rte_sched_port */ 38 struct rte_sched_port *sched; 39 40 /** Recommended burst size. The actual burst size can be bigger or 41 smaller than this value. */ 42 uint32_t tx_burst_sz; 43 }; 44 45 /** sched_writer port operations */ 46 extern struct rte_port_out_ops rte_port_sched_writer_ops; 47 48 #ifdef __cplusplus 49 } 50 #endif 51 52 #endif 53