1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /* Copyright(c) 2007-2022 Intel Corporation */
3 /* $FreeBSD$ */
4 /**
5 *****************************************************************************
6 * @file sal_statistics.h
7 *
8 * @ingroup SalStats
9 *
10 * @description
11 * Statistics related defines, structures and functions
12 *
13 *****************************************************************************/
14
15 #ifndef SAL_STATISTICS_H
16 #define SAL_STATISTICS_H
17
18 #include "sal_statistics_strings.h"
19
20 #define SAL_STATS_SYM 0
21 #define SAL_STATS_DSA 1
22 #define SAL_STATS_DSA2 2
23 #define SAL_STATS_RSA 3
24 #define SAL_STATS_DH 4
25 #define SAL_STATS_KEYGEN 5
26 #define SAL_STATS_LN 6
27 #define SAL_STATS_PRIME 7
28 #define SAL_STATS_ECC 8
29 #define SAL_STATS_ECDH 9
30 #define SAL_STATS_ECDSA 10
31 /**< Numeric values for crypto statistics */
32
33 #define SAL_STATISTICS_STRING_OFF ""
34 /**< String representing the value for disabled statistics */
35
36 /**
37 *****************************************************************************
38 * @ingroup SalStats
39 * Structure describing stats enabled/disabled in the system
40 *
41 * @description
42 * Structure describing stats enabled/disabled in the system
43 *
44 *****************************************************************************/
45 typedef struct sal_statistics_collection_s {
46 CpaBoolean bStatsEnabled;
47 /**< If CPA_TRUE then statistics functionality is enabled */
48 CpaBoolean bDcStatsEnabled;
49 /**< If CPA_TRUE then Compression statistics are enabled */
50 CpaBoolean bDhStatsEnabled;
51 /**< If CPA_TRUE then Diffie-Helman statistics are enabled */
52 CpaBoolean bDsaStatsEnabled;
53 /**< If CPA_TRUE then DSA statistics are enabled */
54 CpaBoolean bEccStatsEnabled;
55 /**< If CPA_TRUE then ECC statistics are enabled */
56 CpaBoolean bKeyGenStatsEnabled;
57 /**< If CPA_TRUE then Key Gen statistics are enabled */
58 CpaBoolean bLnStatsEnabled;
59 /**< If CPA_TRUE then Large Number statistics are enabled */
60 CpaBoolean bPrimeStatsEnabled;
61 /**< If CPA_TRUE then Prime statistics are enabled */
62 CpaBoolean bRsaStatsEnabled;
63 /**< If CPA_TRUE then RSA statistics are enabled */
64 CpaBoolean bSymStatsEnabled;
65 /**< If CPA_TRUE then Symmetric Crypto statistics are enabled */
66 } sal_statistics_collection_t;
67
68 /**
69 ******************************************************************************
70 * @ingroup SalStats
71 *
72 * @description
73 * Initializes structure describing which statistics
74 * are enabled for the acceleration device.
75 *
76 * @param[in] device Pointer to an acceleration device structure
77 *
78 * @retval CPA_STATUS_SUCCESS Operation successful
79 * @retval CPA_STATUS_INVALID_PARAM Invalid param provided
80 * @retval CPA_STATUS_RESOURCE Memory alloc failed
81 * @retval CPA_STATUS_FAIL Operation failed
82 *
83 ******************************************************************************/
84 CpaStatus SalStatistics_InitStatisticsCollection(icp_accel_dev_t *device);
85
86 /**
87 ******************************************************************************
88 * @ingroup SalStats
89 *
90 * @description
91 * Cleans structure describing which statistics
92 * are enabled for the acceleration device.
93 *
94 * @param[in] device Pointer to an acceleration device structure
95 *
96 * @retval CPA_STATUS_SUCCESS Operation successful
97 * @retval CPA_STATUS_INVALID_PARAM Invalid param provided
98 * @retval CPA_STATUS_FAIL Operation failed
99 *
100 ******************************************************************************/
101 CpaStatus SalStatistics_CleanStatisticsCollection(icp_accel_dev_t *device);
102 #endif
Cache object: 5f2abbc2efad52f99832b35e291f902c
|