1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2017 Intel Corporation
5 #ifndef _RTE_CRYPTO_SCHEDULER_OPERATIONS_H
6 #define _RTE_CRYPTO_SCHEDULER_OPERATIONS_H
8 #include <rte_cryptodev.h>
14 typedef int (*rte_cryptodev_scheduler_slave_attach_t
)(
15 struct rte_cryptodev
*dev
, uint8_t slave_id
);
16 typedef int (*rte_cryptodev_scheduler_slave_detach_t
)(
17 struct rte_cryptodev
*dev
, uint8_t slave_id
);
19 typedef int (*rte_cryptodev_scheduler_start_t
)(struct rte_cryptodev
*dev
);
20 typedef int (*rte_cryptodev_scheduler_stop_t
)(struct rte_cryptodev
*dev
);
22 typedef int (*rte_cryptodev_scheduler_config_queue_pair
)(
23 struct rte_cryptodev
*dev
, uint16_t qp_id
);
25 typedef int (*rte_cryptodev_scheduler_create_private_ctx
)(
26 struct rte_cryptodev
*dev
);
28 typedef int (*rte_cryptodev_scheduler_config_option_set
)(
29 struct rte_cryptodev
*dev
,
33 typedef int (*rte_cryptodev_scheduler_config_option_get
)(
34 struct rte_cryptodev
*dev
,
38 struct rte_cryptodev_scheduler_ops
{
39 rte_cryptodev_scheduler_slave_attach_t slave_attach
;
40 rte_cryptodev_scheduler_slave_attach_t slave_detach
;
42 rte_cryptodev_scheduler_start_t scheduler_start
;
43 rte_cryptodev_scheduler_stop_t scheduler_stop
;
45 rte_cryptodev_scheduler_config_queue_pair config_queue_pair
;
47 rte_cryptodev_scheduler_create_private_ctx create_private_ctx
;
49 rte_cryptodev_scheduler_config_option_set option_set
;
50 rte_cryptodev_scheduler_config_option_get option_get
;
56 #endif /* _RTE_CRYPTO_SCHEDULER_OPERATIONS_H */