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