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