1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Copyright(c) 2021 Intel Corporation. All rights rsvd. */ 3 4 #ifndef __CRYPTO_DEV_IAA_CRYPTO_STATS_H__ 5 #define __CRYPTO_DEV_IAA_CRYPTO_STATS_H__ 6 7 #if defined(CONFIG_CRYPTO_DEV_IAA_CRYPTO_STATS) 8 int iaa_crypto_debugfs_init(void); 9 void iaa_crypto_debugfs_cleanup(void); 10 11 void update_total_comp_calls(void); 12 void update_total_comp_bytes_out(int n); 13 void update_total_decomp_calls(void); 14 void update_total_sw_decomp_calls(void); 15 void update_total_decomp_bytes_in(int n); 16 void update_max_comp_delay_ns(u64 start_time_ns); 17 void update_max_decomp_delay_ns(u64 start_time_ns); 18 void update_max_acomp_delay_ns(u64 start_time_ns); 19 void update_max_adecomp_delay_ns(u64 start_time_ns); 20 void update_completion_einval_errs(void); 21 void update_completion_timeout_errs(void); 22 void update_completion_comp_buf_overflow_errs(void); 23 24 void update_wq_comp_calls(struct idxd_wq *idxd_wq); 25 void update_wq_comp_bytes(struct idxd_wq *idxd_wq, int n); 26 void update_wq_decomp_calls(struct idxd_wq *idxd_wq); 27 void update_wq_decomp_bytes(struct idxd_wq *idxd_wq, int n); 28 29 #else iaa_crypto_debugfs_init(void)30static inline int iaa_crypto_debugfs_init(void) { return 0; } iaa_crypto_debugfs_cleanup(void)31static inline void iaa_crypto_debugfs_cleanup(void) {} 32 update_total_comp_calls(void)33static inline void update_total_comp_calls(void) {} update_total_comp_bytes_out(int n)34static inline void update_total_comp_bytes_out(int n) {} update_total_decomp_calls(void)35static inline void update_total_decomp_calls(void) {} update_total_sw_decomp_calls(void)36static inline void update_total_sw_decomp_calls(void) {} update_total_decomp_bytes_in(int n)37static inline void update_total_decomp_bytes_in(int n) {} update_max_comp_delay_ns(u64 start_time_ns)38static inline void update_max_comp_delay_ns(u64 start_time_ns) {} update_max_decomp_delay_ns(u64 start_time_ns)39static inline void update_max_decomp_delay_ns(u64 start_time_ns) {} update_max_acomp_delay_ns(u64 start_time_ns)40static inline void update_max_acomp_delay_ns(u64 start_time_ns) {} update_max_adecomp_delay_ns(u64 start_time_ns)41static inline void update_max_adecomp_delay_ns(u64 start_time_ns) {} update_completion_einval_errs(void)42static inline void update_completion_einval_errs(void) {} update_completion_timeout_errs(void)43static inline void update_completion_timeout_errs(void) {} update_completion_comp_buf_overflow_errs(void)44static inline void update_completion_comp_buf_overflow_errs(void) {} 45 update_wq_comp_calls(struct idxd_wq * idxd_wq)46static inline void update_wq_comp_calls(struct idxd_wq *idxd_wq) {} update_wq_comp_bytes(struct idxd_wq * idxd_wq,int n)47static inline void update_wq_comp_bytes(struct idxd_wq *idxd_wq, int n) {} update_wq_decomp_calls(struct idxd_wq * idxd_wq)48static inline void update_wq_decomp_calls(struct idxd_wq *idxd_wq) {} update_wq_decomp_bytes(struct idxd_wq * idxd_wq,int n)49static inline void update_wq_decomp_bytes(struct idxd_wq *idxd_wq, int n) {} 50 51 #endif // CONFIG_CRYPTO_DEV_IAA_CRYPTO_STATS 52 53 #endif 54