5 #ifndef _RTE_CRYPTO_SCHEDULER_H
6 #define _RTE_CRYPTO_SCHEDULER_H
21 #include "rte_cryptodev_scheduler_operations.h"
28 #ifndef RTE_CRYPTODEV_SCHEDULER_MAX_NB_SLAVES
29 #define RTE_CRYPTODEV_SCHEDULER_MAX_NB_SLAVES (8)
33 #define RTE_CRYPTODEV_SCHEDULER_MAX_NB_WORKER_CORES (RTE_MAX_LCORE - 1)
36 #define SCHEDULER_MODE_NAME_ROUND_ROBIN round-robin
38 #define SCHEDULER_MODE_NAME_PKT_SIZE_DISTR packet-size-distr
40 #define SCHEDULER_MODE_NAME_FAIL_OVER fail-over
42 #define SCHEDULER_MODE_NAME_MULTI_CORE multi-core
48 CDEV_SCHED_MODE_NOT_SET = 0,
63 #define RTE_CRYPTODEV_SCHEDULER_NAME_MAX_LEN (64)
64 #define RTE_CRYPTODEV_SCHEDULER_DESC_MAX_LEN (256)
70 CDEV_SCHED_OPTION_NOT_SET = 0,
71 CDEV_SCHED_OPTION_THRESHOLD,
73 CDEV_SCHED_OPTION_COUNT
79 #define RTE_CRYPTODEV_SCHEDULER_PARAM_THRES "threshold"
80 struct rte_cryptodev_scheduler_threshold_option {
185 uint32_t enable_reorder);
256 typedef uint16_t (*rte_cryptodev_scheduler_burst_enqueue_t)(
void *qp_ctx,
259 typedef uint16_t (*rte_cryptodev_scheduler_burst_dequeue_t)(
void *qp_ctx,
269 struct rte_cryptodev_scheduler_ops *
ops;