35 #include <rte_compat.h>
43 #ifndef RTE_BBDEV_MAX_DEVS
44 #define RTE_BBDEV_MAX_DEVS 128
59 uint16_t __rte_experimental
71 bool __rte_experimental
84 uint16_t __rte_experimental
88 #define RTE_BBDEV_FOREACH(i) for (i = rte_bbdev_find_next(-1); \
89 i < RTE_BBDEV_MAX_DEVS; \
90 i = rte_bbdev_find_next(i))
113 int __rte_experimental
130 int __rte_experimental
159 int __rte_experimental
174 int __rte_experimental
187 int __rte_experimental
200 int __rte_experimental
217 int __rte_experimental
232 int __rte_experimental
260 int __rte_experimental
271 int __rte_experimental
302 #define RTE_BBDEV_END_OF_CAPABILITIES_LIST() \
303 { RTE_BBDEV_OP_NONE }
331 int __rte_experimental
357 int __rte_experimental
362 struct rte_bbdev_queue_data {
370 typedef uint16_t (*rte_bbdev_enqueue_enc_ops_t)(
371 struct rte_bbdev_queue_data *q_data,
376 typedef uint16_t (*rte_bbdev_enqueue_dec_ops_t)(
377 struct rte_bbdev_queue_data *q_data,
382 typedef uint16_t (*rte_bbdev_dequeue_enc_ops_t)(
383 struct rte_bbdev_queue_data *q_data,
387 typedef uint16_t (*rte_bbdev_dequeue_dec_ops_t)(
388 struct rte_bbdev_queue_data *q_data,
391 #define RTE_BBDEV_NAME_MAX_LEN 64
399 struct rte_bbdev_data {
403 struct rte_bbdev_queue_data *queues;
413 struct rte_bbdev_callback;
425 rte_bbdev_enqueue_enc_ops_t enqueue_enc_ops;
427 rte_bbdev_enqueue_dec_ops_t enqueue_dec_ops;
429 rte_bbdev_dequeue_enc_ops_t dequeue_enc_ops;
431 rte_bbdev_dequeue_dec_ops_t dequeue_dec_ops;
433 struct rte_bbdev_data *data;
437 struct rte_bbdev_cb_list list_cbs;
442 extern struct rte_bbdev rte_bbdev_devices[];
465 static inline uint16_t
469 struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
470 struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
471 return dev->enqueue_enc_ops(q_data, ops, num_ops);
495 static inline uint16_t
499 struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
500 struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
501 return dev->enqueue_dec_ops(q_data, ops, num_ops);
525 static inline uint16_t
529 struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
530 struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
531 return dev->dequeue_enc_ops(q_data, ops, num_ops);
556 static inline uint16_t
560 struct rte_bbdev *dev = &rte_bbdev_devices[dev_id];
561 struct rte_bbdev_queue_data *q_data = &dev->data->queues[queue_id];
562 return dev->dequeue_dec_ops(q_data, ops, num_ops);
607 int __rte_experimental
630 int __rte_experimental
650 int __rte_experimental
666 int __rte_experimental
693 int __rte_experimental