Branch data Line data Source code
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 : :
8 : : /**
9 : : * @file
10 : : *
11 : : * API for dmadev fastpath trace support
12 : : */
13 : :
14 : : #include <rte_trace_point.h>
15 : :
16 : : #ifdef __cplusplus
17 : : extern "C" {
18 : : #endif
19 : :
20 : 252 : RTE_TRACE_POINT_FP(
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),
24 : : rte_trace_point_emit_i16(dev_id);
25 : : rte_trace_point_emit_u16(vchan);
26 : : rte_trace_point_emit_u64(stats->submitted);
27 : : rte_trace_point_emit_u64(stats->completed);
28 : : rte_trace_point_emit_u64(stats->errors);
29 : : rte_trace_point_emit_int(ret);
30 : : )
31 : :
32 : 252 : RTE_TRACE_POINT_FP(
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 : : rte_trace_point_emit_i16(dev_id);
37 : : rte_trace_point_emit_u16(vchan);
38 : : rte_trace_point_emit_int_ptr(status);
39 : : rte_trace_point_emit_int(ret);
40 : : )
41 : :
42 : 252 : RTE_TRACE_POINT_FP(
43 : : rte_dma_trace_copy,
44 : : RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan, rte_iova_t src,
45 : : rte_iova_t dst, uint32_t length, uint64_t flags,
46 : : int ret),
47 : : rte_trace_point_emit_i16(dev_id);
48 : : rte_trace_point_emit_u16(vchan);
49 : : rte_trace_point_emit_u64(src);
50 : : rte_trace_point_emit_u64(dst);
51 : : rte_trace_point_emit_u32(length);
52 : : rte_trace_point_emit_u64(flags);
53 : : rte_trace_point_emit_int(ret);
54 : : )
55 : :
56 : 252 : RTE_TRACE_POINT_FP(
57 : : rte_dma_trace_copy_sg,
58 : : RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan,
59 : : struct rte_dma_sge *src, struct rte_dma_sge *dst,
60 : : uint16_t nb_src, uint16_t nb_dst, uint64_t flags,
61 : : int ret),
62 : : rte_trace_point_emit_i16(dev_id);
63 : : rte_trace_point_emit_u16(vchan);
64 : : rte_trace_point_emit_ptr(src);
65 : : rte_trace_point_emit_ptr(dst);
66 : : rte_trace_point_emit_u16(nb_src);
67 : : rte_trace_point_emit_u16(nb_dst);
68 : : rte_trace_point_emit_u64(flags);
69 : : rte_trace_point_emit_int(ret);
70 : : )
71 : :
72 : 252 : RTE_TRACE_POINT_FP(
73 : : rte_dma_trace_fill,
74 : : RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan, uint64_t pattern,
75 : : rte_iova_t dst, uint32_t length, uint64_t flags,
76 : : int ret),
77 : : rte_trace_point_emit_i16(dev_id);
78 : : rte_trace_point_emit_u16(vchan);
79 : : rte_trace_point_emit_u64(pattern);
80 : : rte_trace_point_emit_u64(dst);
81 : : rte_trace_point_emit_u32(length);
82 : : rte_trace_point_emit_u64(flags);
83 : : rte_trace_point_emit_int(ret);
84 : : )
85 : :
86 : 252 : RTE_TRACE_POINT_FP(
87 : : rte_dma_trace_submit,
88 : : RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan, int ret),
89 : : rte_trace_point_emit_i16(dev_id);
90 : : rte_trace_point_emit_u16(vchan);
91 : : rte_trace_point_emit_int(ret);
92 : : )
93 : :
94 : 252 : RTE_TRACE_POINT_FP(
95 : : rte_dma_trace_completed,
96 : : RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan,
97 : : const uint16_t nb_cpls, uint16_t *last_idx,
98 : : bool *has_error, uint16_t ret),
99 : : rte_trace_point_emit_i16(dev_id);
100 : : rte_trace_point_emit_u16(vchan);
101 : : rte_trace_point_emit_u16(nb_cpls);
102 : : rte_trace_point_emit_u16_ptr(last_idx);
103 : : rte_trace_point_emit_u8_ptr(has_error);
104 : : rte_trace_point_emit_u16(ret);
105 : : )
106 : :
107 : 252 : RTE_TRACE_POINT_FP(
108 : : rte_dma_trace_completed_status,
109 : : RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan,
110 : : const uint16_t nb_cpls, uint16_t *last_idx,
111 : : enum rte_dma_status_code *status, uint16_t ret),
112 : : rte_trace_point_emit_i16(dev_id);
113 : : rte_trace_point_emit_u16(vchan);
114 : : rte_trace_point_emit_u16(nb_cpls);
115 : : rte_trace_point_emit_u16_ptr(last_idx);
116 : : rte_trace_point_emit_ptr(status);
117 : : rte_trace_point_emit_u16(ret);
118 : : )
119 : :
120 : 252 : RTE_TRACE_POINT_FP(
121 : : rte_dma_trace_burst_capacity,
122 : : RTE_TRACE_POINT_ARGS(int16_t dev_id, uint16_t vchan, uint16_t ret),
123 : : rte_trace_point_emit_i16(dev_id);
124 : : rte_trace_point_emit_u16(vchan);
125 : : rte_trace_point_emit_u16(ret);
126 : : )
127 : :
128 : : #ifdef __cplusplus
129 : : }
130 : : #endif
131 : :
132 : : #endif /* RTE_DMADEV_TRACE_FP_H */
|