1/* SPDX-License-Identifier: BSD-3-Clause */ 2/* Copyright(c) 2007-2022 Intel Corporation */ 3/** 4 *************************************************************************** 5 * @file sal_hw_gen.h 6 * 7 * @ingroup SalHwGen 8 * 9 * @description 10 * Functions which return a value corresponding to qat device generation 11 * 12 ***************************************************************************/ 13 14#ifndef SAL_HW_GEN_H 15#define SAL_HW_GEN_H 16 17#include "cpa.h" 18#include "sal_types_compression.h" 19#include "lac_sal_types_crypto.h" 20 21/** 22 *************************************************************************** 23 * @ingroup SalHwGen 24 * 25 * @description This function returns whether qat device is gen 4 or not 26 * 27 * @param[in] pService pointer to compression service 28 * 29 ***************************************************************************/ 30 31static inline CpaBoolean 32isDcGen4x(const sal_compression_service_t *pService) 33{ 34 return (pService->generic_service_info.gen == GEN4); 35} 36 37/** 38 *************************************************************************** 39 * @ingroup SalHwGen 40 * 41 * @description This function returns whether qat device is gen 2/3 or not 42 * 43 * @param[in] pService pointer to compression service 44 * 45 ***************************************************************************/ 46 47static inline CpaBoolean 48isDcGen2x(const sal_compression_service_t *pService) 49{ 50 return ((pService->generic_service_info.gen == GEN2) || 51 (pService->generic_service_info.gen == GEN3)); 52} 53 54/** 55 *************************************************************************** 56 * @ingroup SalHwGen 57 * 58 * @description This function returns whether qat device is gen 4 or not 59 * 60 * @param[in] pService pointer to crypto service 61 * 62 ***************************************************************************/ 63 64static inline CpaBoolean 65isCyGen4x(const sal_crypto_service_t *pService) 66{ 67 return (pService->generic_service_info.gen == GEN4); 68} 69 70/** 71 *************************************************************************** 72 * @ingroup SalHwGen 73 * 74 * @description This function returns whether qat device is gen 2/3 or not 75 * 76 * @param[in] pService pointer to crypto service 77 * 78 ***************************************************************************/ 79 80static inline CpaBoolean 81isCyGen2x(const sal_crypto_service_t *pService) 82{ 83 return ((pService->generic_service_info.gen == GEN2) || 84 (pService->generic_service_info.gen == GEN3)); 85} 86 87#endif /* SAL_HW_GEN_H */ 88