xref: /dpdk/lib/port/rte_swx_port_ethdev.h (revision 719834a6849e1daf4a70ff7742bbcc3ae7e25607)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2020 Intel Corporation
3  */
4 #ifndef __INCLUDE_RTE_SWX_PORT_ETHDEV_H__
5 #define __INCLUDE_RTE_SWX_PORT_ETHDEV_H__
6 
7 /**
8  * @file
9  * RTE SWX Ethernet Device Input and Output Ports
10  */
11 
12 #include <stdint.h>
13 
14 #include "rte_swx_port.h"
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 /** Ethernet device input port (reader) creation parameters. */
21 struct rte_swx_port_ethdev_reader_params {
22 	/** Name of a valid and fully configured Ethernet device. */
23 	const char *dev_name;
24 
25 	/** Ethernet device receive queue ID. */
26 	uint16_t queue_id;
27 
28 	/** Ethernet device receive burst size. */
29 	uint32_t burst_size;
30 };
31 
32 /** Ethernet device reader operations. */
33 extern struct rte_swx_port_in_ops rte_swx_port_ethdev_reader_ops;
34 
35 /** Ethernet device output port (writer) creation parameters. */
36 struct rte_swx_port_ethdev_writer_params {
37 	/** Name of a valid and fully configured Ethernet device. */
38 	const char *dev_name;
39 
40 	/** Ethernet device transmit queue ID. */
41 	uint16_t queue_id;
42 
43 	/** Ethernet device transmit burst size. */
44 	uint32_t burst_size;
45 };
46 
47 /** Ethernet device writer operations. */
48 extern struct rte_swx_port_out_ops rte_swx_port_ethdev_writer_ops;
49 
50 #ifdef __cplusplus
51 }
52 #endif
53 
54 #endif
55