xref: /dpdk/lib/eventdev/eventdev_private.c (revision 54f17843a887131fb638a2b788fc35c7e7c57d99)
1d35e6132SPavan Nikhilesh /* SPDX-License-Identifier: BSD-3-Clause
2d35e6132SPavan Nikhilesh  * Copyright(C) 2021 Marvell.
3d35e6132SPavan Nikhilesh  */
4d35e6132SPavan Nikhilesh 
5d35e6132SPavan Nikhilesh #include "eventdev_pmd.h"
6d35e6132SPavan Nikhilesh #include "rte_eventdev.h"
7d35e6132SPavan Nikhilesh 
8d35e6132SPavan Nikhilesh static uint16_t
9d35e6132SPavan Nikhilesh dummy_event_enqueue(__rte_unused void *port,
10d35e6132SPavan Nikhilesh 		    __rte_unused const struct rte_event *ev)
11d35e6132SPavan Nikhilesh {
12d35e6132SPavan Nikhilesh 	RTE_EDEV_LOG_ERR(
13d35e6132SPavan Nikhilesh 		"event enqueue requested for unconfigured event device");
14d35e6132SPavan Nikhilesh 	return 0;
15d35e6132SPavan Nikhilesh }
16d35e6132SPavan Nikhilesh 
17d35e6132SPavan Nikhilesh static uint16_t
18d35e6132SPavan Nikhilesh dummy_event_enqueue_burst(__rte_unused void *port,
19d35e6132SPavan Nikhilesh 			  __rte_unused const struct rte_event ev[],
20d35e6132SPavan Nikhilesh 			  __rte_unused uint16_t nb_events)
21d35e6132SPavan Nikhilesh {
22d35e6132SPavan Nikhilesh 	RTE_EDEV_LOG_ERR(
23d35e6132SPavan Nikhilesh 		"event enqueue burst requested for unconfigured event device");
24d35e6132SPavan Nikhilesh 	return 0;
25d35e6132SPavan Nikhilesh }
26d35e6132SPavan Nikhilesh 
27d35e6132SPavan Nikhilesh static uint16_t
28d35e6132SPavan Nikhilesh dummy_event_dequeue(__rte_unused void *port, __rte_unused struct rte_event *ev,
29d35e6132SPavan Nikhilesh 		    __rte_unused uint64_t timeout_ticks)
30d35e6132SPavan Nikhilesh {
31d35e6132SPavan Nikhilesh 	RTE_EDEV_LOG_ERR(
32d35e6132SPavan Nikhilesh 		"event dequeue requested for unconfigured event device");
33d35e6132SPavan Nikhilesh 	return 0;
34d35e6132SPavan Nikhilesh }
35d35e6132SPavan Nikhilesh 
36d35e6132SPavan Nikhilesh static uint16_t
37d35e6132SPavan Nikhilesh dummy_event_dequeue_burst(__rte_unused void *port,
38d35e6132SPavan Nikhilesh 			  __rte_unused struct rte_event ev[],
39d35e6132SPavan Nikhilesh 			  __rte_unused uint16_t nb_events,
40d35e6132SPavan Nikhilesh 			  __rte_unused uint64_t timeout_ticks)
41d35e6132SPavan Nikhilesh {
42d35e6132SPavan Nikhilesh 	RTE_EDEV_LOG_ERR(
43d35e6132SPavan Nikhilesh 		"event dequeue burst requested for unconfigured event device");
44d35e6132SPavan Nikhilesh 	return 0;
45d35e6132SPavan Nikhilesh }
46d35e6132SPavan Nikhilesh 
47*54f17843SMattias Rönnblom static void
48*54f17843SMattias Rönnblom dummy_event_maintain(__rte_unused void *port, __rte_unused int op)
49*54f17843SMattias Rönnblom {
50*54f17843SMattias Rönnblom 	RTE_EDEV_LOG_ERR(
51*54f17843SMattias Rönnblom 		"maintenance requested for unconfigured event device");
52*54f17843SMattias Rönnblom }
53*54f17843SMattias Rönnblom 
54d35e6132SPavan Nikhilesh static uint16_t
55d35e6132SPavan Nikhilesh dummy_event_tx_adapter_enqueue(__rte_unused void *port,
56d35e6132SPavan Nikhilesh 			       __rte_unused struct rte_event ev[],
57d35e6132SPavan Nikhilesh 			       __rte_unused uint16_t nb_events)
58d35e6132SPavan Nikhilesh {
59d35e6132SPavan Nikhilesh 	RTE_EDEV_LOG_ERR(
60d35e6132SPavan Nikhilesh 		"event Tx adapter enqueue requested for unconfigured event device");
61d35e6132SPavan Nikhilesh 	return 0;
62d35e6132SPavan Nikhilesh }
63d35e6132SPavan Nikhilesh 
64d35e6132SPavan Nikhilesh static uint16_t
65d35e6132SPavan Nikhilesh dummy_event_tx_adapter_enqueue_same_dest(__rte_unused void *port,
66d35e6132SPavan Nikhilesh 					 __rte_unused struct rte_event ev[],
67d35e6132SPavan Nikhilesh 					 __rte_unused uint16_t nb_events)
68d35e6132SPavan Nikhilesh {
69d35e6132SPavan Nikhilesh 	RTE_EDEV_LOG_ERR(
70d35e6132SPavan Nikhilesh 		"event Tx adapter enqueue same destination requested for unconfigured event device");
71d35e6132SPavan Nikhilesh 	return 0;
72d35e6132SPavan Nikhilesh }
73d35e6132SPavan Nikhilesh 
74d35e6132SPavan Nikhilesh static uint16_t
75d35e6132SPavan Nikhilesh dummy_event_crypto_adapter_enqueue(__rte_unused void *port,
76d35e6132SPavan Nikhilesh 				   __rte_unused struct rte_event ev[],
77d35e6132SPavan Nikhilesh 				   __rte_unused uint16_t nb_events)
78d35e6132SPavan Nikhilesh {
79d35e6132SPavan Nikhilesh 	RTE_EDEV_LOG_ERR(
80d35e6132SPavan Nikhilesh 		"event crypto adapter enqueue requested for unconfigured event device");
81d35e6132SPavan Nikhilesh 	return 0;
82d35e6132SPavan Nikhilesh }
83d35e6132SPavan Nikhilesh 
84d35e6132SPavan Nikhilesh void
85d35e6132SPavan Nikhilesh event_dev_fp_ops_reset(struct rte_event_fp_ops *fp_op)
86d35e6132SPavan Nikhilesh {
87d35e6132SPavan Nikhilesh 	static void *dummy_data[RTE_MAX_QUEUES_PER_PORT];
88d35e6132SPavan Nikhilesh 	static const struct rte_event_fp_ops dummy = {
89d35e6132SPavan Nikhilesh 		.enqueue = dummy_event_enqueue,
90d35e6132SPavan Nikhilesh 		.enqueue_burst = dummy_event_enqueue_burst,
91d35e6132SPavan Nikhilesh 		.enqueue_new_burst = dummy_event_enqueue_burst,
92d35e6132SPavan Nikhilesh 		.enqueue_forward_burst = dummy_event_enqueue_burst,
93d35e6132SPavan Nikhilesh 		.dequeue = dummy_event_dequeue,
94d35e6132SPavan Nikhilesh 		.dequeue_burst = dummy_event_dequeue_burst,
95*54f17843SMattias Rönnblom 		.maintain = dummy_event_maintain,
96d35e6132SPavan Nikhilesh 		.txa_enqueue = dummy_event_tx_adapter_enqueue,
97d35e6132SPavan Nikhilesh 		.txa_enqueue_same_dest =
98d35e6132SPavan Nikhilesh 			dummy_event_tx_adapter_enqueue_same_dest,
99d35e6132SPavan Nikhilesh 		.ca_enqueue = dummy_event_crypto_adapter_enqueue,
100d35e6132SPavan Nikhilesh 		.data = dummy_data,
101d35e6132SPavan Nikhilesh 	};
102d35e6132SPavan Nikhilesh 
103d35e6132SPavan Nikhilesh 	*fp_op = dummy;
104d35e6132SPavan Nikhilesh }
105d35e6132SPavan Nikhilesh 
106d35e6132SPavan Nikhilesh void
107d35e6132SPavan Nikhilesh event_dev_fp_ops_set(struct rte_event_fp_ops *fp_op,
108d35e6132SPavan Nikhilesh 		     const struct rte_eventdev *dev)
109d35e6132SPavan Nikhilesh {
110d35e6132SPavan Nikhilesh 	fp_op->enqueue = dev->enqueue;
111d35e6132SPavan Nikhilesh 	fp_op->enqueue_burst = dev->enqueue_burst;
112d35e6132SPavan Nikhilesh 	fp_op->enqueue_new_burst = dev->enqueue_new_burst;
113d35e6132SPavan Nikhilesh 	fp_op->enqueue_forward_burst = dev->enqueue_forward_burst;
114d35e6132SPavan Nikhilesh 	fp_op->dequeue = dev->dequeue;
115d35e6132SPavan Nikhilesh 	fp_op->dequeue_burst = dev->dequeue_burst;
116*54f17843SMattias Rönnblom 	fp_op->maintain = dev->maintain;
117d35e6132SPavan Nikhilesh 	fp_op->txa_enqueue = dev->txa_enqueue;
118d35e6132SPavan Nikhilesh 	fp_op->txa_enqueue_same_dest = dev->txa_enqueue_same_dest;
119d35e6132SPavan Nikhilesh 	fp_op->ca_enqueue = dev->ca_enqueue;
120d35e6132SPavan Nikhilesh 	fp_op->data = dev->data->ports;
121d35e6132SPavan Nikhilesh }
122