DPDK  24.03.0
rte_dmadev_trace_fp.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2024 HiSilicon Limited
3  */
4 
5 #ifndef RTE_DMADEV_TRACE_FP_H
6 #define RTE_DMADEV_TRACE_FP_H
7 
14 #include <rte_trace_point.h>
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
21  rte_dma_trace_stats_get,
22  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan,
23  struct rte_dma_stats *stats, int ret),
30 )
31 
33  rte_dma_trace_vchan_status,
34  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan,
35  enum rte_dma_vchan_status *status, int ret),
36 #ifdef _RTE_TRACE_POINT_REGISTER_H_
37  enum rte_dma_vchan_status __status = 0;
38  status = &__status;
39 #endif /* _RTE_TRACE_POINT_REGISTER_H_ */
40  int vchan_status = *status;
43  rte_trace_point_emit_int(vchan_status);
45 )
46 
48  rte_dma_trace_copy,
49  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan, rte_iova_t src,
50  rte_iova_t dst, uint32_t length, uint64_t flags,
51  int ret),
59 )
60 
62  rte_dma_trace_copy_sg,
63  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan,
64  struct rte_dma_sge *src, struct rte_dma_sge *dst,
65  uint16_t nb_src, uint16_t nb_dst, uint64_t flags,
66  int ret),
75 )
76 
78  rte_dma_trace_fill,
79  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan, uint64_t pattern,
80  rte_iova_t dst, uint32_t length, uint64_t flags,
81  int ret),
84  rte_trace_point_emit_u64(pattern);
89 )
90 
92  rte_dma_trace_submit,
93  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan, int ret),
97 )
98 
100  rte_dma_trace_completed,
101  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan,
102  const uint16_t nb_cpls, uint16_t *last_idx,
103  bool *has_error, uint16_t ret),
104 #ifdef _RTE_TRACE_POINT_REGISTER_H_
105  uint16_t __last_idx = 0;
106  bool __has_error = false;
107  last_idx = &__last_idx;
108  has_error = &__has_error;
109 #endif /* _RTE_TRACE_POINT_REGISTER_H_ */
110  int has_error_val = *has_error;
111  int last_idx_val = *last_idx;
112  rte_trace_point_emit_i16(dev_id);
114  rte_trace_point_emit_u16(nb_cpls);
115  rte_trace_point_emit_int(last_idx_val);
116  rte_trace_point_emit_int(has_error_val);
118 )
119 
121  rte_dma_trace_completed_status,
122  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan,
123  const uint16_t nb_cpls, uint16_t *last_idx,
124  enum rte_dma_status_code *status, uint16_t ret),
125 #ifdef _RTE_TRACE_POINT_REGISTER_H_
126  uint16_t __last_idx = 0;
127  last_idx = &__last_idx;
128 #endif /* _RTE_TRACE_POINT_REGISTER_H_ */
129  int last_idx_val = *last_idx;
130  rte_trace_point_emit_i16(dev_id);
132  rte_trace_point_emit_u16(nb_cpls);
133  rte_trace_point_emit_int(last_idx_val);
134  rte_trace_point_emit_ptr(status);
136 )
137 
139  rte_dma_trace_burst_capacity,
140  RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan, uint16_t ret),
141  rte_trace_point_emit_i16(dev_id);
144 )
145 
146 #ifdef __cplusplus
147 }
148 #endif
149 
150 #endif /* RTE_DMADEV_TRACE_FP_H */
#define rte_trace_point_emit_u32(val)
#define rte_trace_point_emit_int(val)
uint64_t rte_iova_t
Definition: rte_common.h:584
#define RTE_TRACE_POINT_ARGS
#define rte_trace_point_emit_i16(val)
#define rte_trace_point_emit_u16(val)
uint64_t errors
Definition: rte_dmadev.h:615
rte_dma_status_code
Definition: rte_dmadev.h:706
#define rte_trace_point_emit_ptr(val)
#define RTE_TRACE_POINT_FP(tp, args,...)
rte_dma_vchan_status
Definition: rte_dmadev.h:664
uint64_t completed
Definition: rte_dmadev.h:613
uint64_t submitted
Definition: rte_dmadev.h:609
#define rte_trace_point_emit_u64(val)