1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /* Copyright(c) 2007-2022 Intel Corporation */
3 /* $FreeBSD$ */
4 
5 /**
6  ***************************************************************************
7  * @file lac_sym_cb.h
8  *
9  * @defgroup LacSymCb Symmetric callback functions
10  *
11  * @ingroup LacSym
12  *
13  * Functions to assist with callback processing for the symmetric component
14  ***************************************************************************/
15 
16 #ifndef LAC_SYM_CB_H
17 #define LAC_SYM_CB_H
18 
19 /**
20  *****************************************************************************
21  * @ingroup LacSym
22  *      Dequeue pending requests
23  * @description
24  *      This function is called by a callback function of a blocking
25  *      operation (either a partial packet or a hash precompute operaion)
26  *      in softIRQ context. It dequeues requests for the following reasons:
27  *          1. All pre-computes that happened when initialising a session
28  *             have completed. Dequeue any requests that were queued on the
29  *             session while waiting for the precompute operations to complete.
30  *          2. A partial packet request has completed. Dequeue any partials
31  *             that were queued for this session while waiting for a previous
32  *             partial to complete.
33  *
34  * @param[in] pSessionDesc  Pointer to the session descriptor
35  *
36  * @return CpaStatus
37  *
38  ****************************************************************************/
39 CpaStatus LacSymCb_PendingReqsDequeue(lac_session_desc_t *pSessionDesc);
40 
41 /**
42  *****************************************************************************
43  * @ingroup LacSym
44  *      Register symmetric callback funcion handlers
45  *
46  * @description
47  *      This function registers the symmetric callback handler functions with
48  *      the main symmetric callback handler function
49  *
50  * @return None
51  *
52  ****************************************************************************/
53 void LacSymCb_CallbacksRegister(void);
54 
55 #endif /* LAC_SYM_CB_H */
56