text: /* SPDX-License-Identifier: BSD-3-Clause
   * Copyright(C) 2020 Marvell International Ltd.
   */
  
  #ifndef _RTE_CRYPTODEV_TRACE_H_
  #define _RTE_CRYPTODEV_TRACE_H_
  
  /**
   * @file
   *
   * API for cryptodev trace support
   */
  
  #ifdef __cplusplus
  extern "C" {
  #endif
  
  #include <rte_trace_point.h>
  
  #include "rte_cryptodev.h"
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_configure,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id,
  		struct rte_cryptodev_config *conf),
  	rte_trace_point_emit_u8(dev_id);
  	rte_trace_point_emit_u16(conf->nb_queue_pairs);
  	rte_trace_point_emit_i64(conf->ff_disable);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_start,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id, int rc),
  	rte_trace_point_emit_u8(dev_id);
  	rte_trace_point_emit_int(rc);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_stop,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id),
  	rte_trace_point_emit_u8(dev_id);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_close,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id, int rc),
  	rte_trace_point_emit_u8(dev_id);
  	rte_trace_point_emit_int(rc);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_queue_pair_setup,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t queue_pair_id,
  		const struct rte_cryptodev_qp_conf *conf),
  	rte_trace_point_emit_u8(dev_id);
  	rte_trace_point_emit_u16(queue_pair_id);
  	rte_trace_point_emit_u32(conf->nb_descriptors);
  	rte_trace_point_emit_ptr(conf->mp_session);
  	rte_trace_point_emit_ptr(conf->mp_session_private);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_sym_session_pool_create,
  	RTE_TRACE_POINT_ARGS(const char *name, uint32_t nb_elts,
  		uint32_t elt_size, uint32_t cache_size,
  		uint16_t user_data_size, void *mempool),
  	rte_trace_point_emit_string(name);
  	rte_trace_point_emit_u32(nb_elts);
  	rte_trace_point_emit_u32(elt_size);
  	rte_trace_point_emit_u32(cache_size);
  	rte_trace_point_emit_u16(user_data_size);
  	rte_trace_point_emit_ptr(mempool);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_sym_session_create,
  	RTE_TRACE_POINT_ARGS(void *mempool,
  		struct rte_cryptodev_sym_session *sess),
  	rte_trace_point_emit_ptr(mempool);
  	rte_trace_point_emit_ptr(sess);
  	rte_trace_point_emit_u64(sess->opaque_data);
  	rte_trace_point_emit_u16(sess->nb_drivers);
  	rte_trace_point_emit_u16(sess->user_data_sz);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_asym_session_create,
  	RTE_TRACE_POINT_ARGS(void *mempool,
  		struct rte_cryptodev_asym_session *sess),
  	rte_trace_point_emit_ptr(mempool);
  	rte_trace_point_emit_ptr(sess);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_sym_session_free,
  	RTE_TRACE_POINT_ARGS(struct rte_cryptodev_sym_session *sess),
  	rte_trace_point_emit_ptr(sess);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_asym_session_free,
  	RTE_TRACE_POINT_ARGS(struct rte_cryptodev_asym_session *sess),
  	rte_trace_point_emit_ptr(sess);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_sym_session_init,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id,
  		struct rte_cryptodev_sym_session *sess, void *xforms,
  		void *mempool),
  	rte_trace_point_emit_u8(dev_id);
  	rte_trace_point_emit_ptr(sess);
  	rte_trace_point_emit_u64(sess->opaque_data);
  	rte_trace_point_emit_u16(sess->nb_drivers);
  	rte_trace_point_emit_u16(sess->user_data_sz);
  	rte_trace_point_emit_ptr(xforms);
  	rte_trace_point_emit_ptr(mempool);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_asym_session_init,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id,
  		struct rte_cryptodev_asym_session *sess, void *xforms,
  		void *mempool),
  	rte_trace_point_emit_u8(dev_id);
  	rte_trace_point_emit_ptr(sess);
  	rte_trace_point_emit_ptr(xforms);
  	rte_trace_point_emit_ptr(mempool);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_sym_session_clear,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id, void *sess),
  	rte_trace_point_emit_u8(dev_id);
  	rte_trace_point_emit_ptr(sess);
  )
  
  RTE_TRACE_POINT(
  	rte_cryptodev_trace_asym_session_clear,
  	RTE_TRACE_POINT_ARGS(uint8_t dev_id, void *sess),
  	rte_trace_point_emit_u8(dev_id);
  	rte_trace_point_emit_ptr(sess);
  )
  
  #ifdef __cplusplus
  }
  #endif
  
  #endif /* _RTE_CRYPTODEV_TRACE_H_ */
  