1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2019 Intel Corporation
5 #ifndef __INCLUDE_RTE_PORT_EVENTDEV_H__
6 #define __INCLUDE_RTE_PORT_EVENTDEV_H__
14 * RTE Port Eventdev Interface
16 * eventdev_reader: input port built on top of pre-initialized eventdev
18 * eventdev_writer: output port built on top of pre-initialized eventdev
24 #include <rte_eventdev.h>
28 /** Eventdev_reader port parameters */
29 struct rte_port_eventdev_reader_params {
30 /** Eventdev Device ID */
33 /** Eventdev Port ID */
37 /** Eventdev_reader port operations. */
38 extern struct rte_port_in_ops rte_port_eventdev_reader_ops;
40 /** Eventdev_writer port parameters. */
41 struct rte_port_eventdev_writer_params {
42 /** Eventdev Device ID. */
45 /** Eventdev Port ID. */
48 /** Eventdev Queue ID. */
51 /** Burst size to eventdev interface. */
52 uint32_t enq_burst_sz;
54 /** Scheduler synchronization type (RTE_SCHED_TYPE_*)*/
57 /** The type of eventdev enqueue operation - new/forward/release */
61 /** Eventdev_writer port operations. */
62 extern struct rte_port_out_ops rte_port_eventdev_writer_ops;
64 /** Event_writer_nodrop port parameters. */
65 struct rte_port_eventdev_writer_nodrop_params {
66 /** Eventdev Device ID. */
69 /** Eventdev Port ID. */
72 /** Eventdev Queue ID. */
75 /** Burst size to eventdev interface. */
76 uint32_t enq_burst_sz;
78 /** Scheduler synchronization type (RTE_SCHED_TYPE_*)*/
81 /** The type of eventdev enqueue operation - new/forward/release */
84 /** Maximum number of retries, 0 for no limit. */
88 /** Eventdev_writer_nodrop port operations. */
89 extern struct rte_port_out_ops rte_port_eventdev_writer_nodrop_ops;