1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /* Copyright(c) 2007-2022 Intel Corporation */
3 /* $FreeBSD$ */
4
5 /**
6 ******************************************************************************
7 * @file lac_sym_queue.h
8 *
9 * @defgroup LacSymQueue Symmetric request queueing functions
10 *
11 * @ingroup LacSym
12 *
13 * Function prototypes for sending/queuing symmetric requests
14 *****************************************************************************/
15
16 #ifndef LAC_SYM_QUEUE_H
17 #define LAC_SYM_QUEUE_H
18
19 #include "cpa.h"
20 #include "lac_session.h"
21 #include "lac_sym.h"
22
23 /**
24 *******************************************************************************
25 * @ingroup LacSymQueue
26 * Send a request message to the QAT, or queue it if necessary
27 *
28 * @description
29 * This function will send a request message to the QAT. However, if a
30 * blocking condition exists on the session (e.g. partial packet in flight,
31 * precompute in progress), then the message will instead be pushed on to
32 * the request queue for the session and will be sent later to the QAT
33 * once the blocking condition is cleared.
34 *
35 * @param[in] instanceHandle Handle for instance of QAT
36 * @param[in] pRequest Pointer to request cookie
37 * @param[out] pSessionDesc Pointer to session descriptor
38 *
39 *
40 * @retval CPA_STATUS_SUCCESS Success
41 * @retval CPA_STATUS_FAIL Function failed.
42 * @retval CPA_STATUS_RESOURCE Problem Acquiring system resource
43 * @retval CPA_STATUS_RETRY Failed to send message to QAT due to queue
44 * full condition
45 *
46 *****************************************************************************/
47 CpaStatus LacSymQueue_RequestSend(const CpaInstanceHandle instanceHandle,
48 lac_sym_bulk_cookie_t *pRequest,
49 lac_session_desc_t *pSessionDesc);
50
51 #endif /* LAC_SYM_QUEUE_H */
Cache object: 75ec71b0d189482aefd93a83efd01798
|