1 /* SPDX-License-Identifier: GPL-2.0 */
2 #if !defined(_VISL_TRACE_AV1_H_) || defined(TRACE_HEADER_MULTI_READ)
3 #define _VISL_TRACE_AV1_H_
4 
5 #include <linux/tracepoint.h>
6 #include "visl.h"
7 
8 #undef TRACE_SYSTEM
9 #define TRACE_SYSTEM visl_av1_controls
10 
11 DECLARE_EVENT_CLASS(v4l2_ctrl_av1_seq_tmpl,
12 	TP_PROTO(const struct v4l2_ctrl_av1_sequence *s),
13 	TP_ARGS(s),
14 	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_sequence, s)),
15 	TP_fast_assign(__entry->s = *s;),
16 	TP_printk("\nflags %s\nseq_profile: %u\norder_hint_bits: %u\nbit_depth: %u\n"
17 		  "max_frame_width_minus_1: %u\nmax_frame_height_minus_1: %u\n",
18 		  __print_flags(__entry->s.flags, "|",
19 		  {V4L2_AV1_SEQUENCE_FLAG_STILL_PICTURE, "STILL_PICTURE"},
20 		  {V4L2_AV1_SEQUENCE_FLAG_USE_128X128_SUPERBLOCK, "USE_128X128_SUPERBLOCK"},
21 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_FILTER_INTRA, "ENABLE_FILTER_INTRA"},
22 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_INTRA_EDGE_FILTER, "ENABLE_INTRA_EDGE_FILTER"},
23 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_INTERINTRA_COMPOUND, "ENABLE_INTERINTRA_COMPOUND"},
24 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_MASKED_COMPOUND, "ENABLE_MASKED_COMPOUND"},
25 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_WARPED_MOTION, "ENABLE_WARPED_MOTION"},
26 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_DUAL_FILTER, "ENABLE_DUAL_FILTER"},
27 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_ORDER_HINT, "ENABLE_ORDER_HINT"},
28 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_JNT_COMP, "ENABLE_JNT_COMP"},
29 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_REF_FRAME_MVS, "ENABLE_REF_FRAME_MVS"},
30 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_SUPERRES, "ENABLE_SUPERRES"},
31 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_CDEF, "ENABLE_CDEF"},
32 		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_RESTORATION, "ENABLE_RESTORATION"},
33 		  {V4L2_AV1_SEQUENCE_FLAG_MONO_CHROME, "MONO_CHROME"},
34 		  {V4L2_AV1_SEQUENCE_FLAG_COLOR_RANGE, "COLOR_RANGE"},
35 		  {V4L2_AV1_SEQUENCE_FLAG_SUBSAMPLING_X, "SUBSAMPLING_X"},
36 		  {V4L2_AV1_SEQUENCE_FLAG_SUBSAMPLING_Y, "SUBSAMPLING_Y"},
37 		  {V4L2_AV1_SEQUENCE_FLAG_FILM_GRAIN_PARAMS_PRESENT, "FILM_GRAIN_PARAMS_PRESENT"},
38 		  {V4L2_AV1_SEQUENCE_FLAG_SEPARATE_UV_DELTA_Q, "SEPARATE_UV_DELTA_Q"}),
39 		  __entry->s.seq_profile,
40 		  __entry->s.order_hint_bits,
41 		  __entry->s.bit_depth,
42 		  __entry->s.max_frame_width_minus_1,
43 		  __entry->s.max_frame_height_minus_1
44 	)
45 );
46 
47 DECLARE_EVENT_CLASS(v4l2_ctrl_av1_tge_tmpl,
48 	TP_PROTO(const struct v4l2_ctrl_av1_tile_group_entry *t),
49 	TP_ARGS(t),
50 	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_tile_group_entry, t)),
51 	TP_fast_assign(__entry->t = *t;),
52 	TP_printk("\ntile_offset: %u\n tile_size: %u\n tile_row: %u\ntile_col: %u\n",
53 		  __entry->t.tile_offset,
54 		  __entry->t.tile_size,
55 		  __entry->t.tile_row,
56 		  __entry->t.tile_col
57 	)
58 );
59 
60 DECLARE_EVENT_CLASS(v4l2_ctrl_av1_frame_tmpl,
61 	TP_PROTO(const struct v4l2_ctrl_av1_frame *f),
62 	TP_ARGS(f),
63 	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_frame, f)),
64 	TP_fast_assign(__entry->f = *f;),
65 	TP_printk("\ntile_info.flags: %s\ntile_info.context_update_tile_id: %u\n"
66 		  "tile_info.tile_cols: %u\ntile_info.tile_rows: %u\n"
67 		  "tile_info.mi_col_starts: %s\ntile_info.mi_row_starts: %s\n"
68 		  "tile_info.width_in_sbs_minus_1: %s\ntile_info.height_in_sbs_minus_1: %s\n"
69 		  "tile_info.tile_size_bytes: %u\nquantization.flags: %s\n"
70 		  "quantization.base_q_idx: %u\nquantization.delta_q_y_dc: %d\n"
71 		  "quantization.delta_q_u_dc: %d\nquantization.delta_q_u_ac: %d\n"
72 		  "quantization.delta_q_v_dc: %d\nquantization.delta_q_v_ac: %d\n"
73 		  "quantization.qm_y: %u\nquantization.qm_u: %u\nquantization.qm_v: %u\n"
74 		  "quantization.delta_q_res: %u\nsuperres_denom: %u\nsegmentation.flags: %s\n"
75 		  "segmentation.last_active_seg_id: %u\nsegmentation.feature_enabled:%s\n"
76 		  "loop_filter.flags: %s\nloop_filter.level: %s\nloop_filter.sharpness: %u\n"
77 		  "loop_filter.ref_deltas: %s\nloop_filter.mode_deltas: %s\n"
78 		  "loop_filter.delta_lf_res: %u\ncdef.damping_minus_3: %u\ncdef.bits: %u\n"
79 		  "cdef.y_pri_strength: %s\ncdef.y_sec_strength: %s\n"
80 		  "cdef.uv_pri_strength: %s\ncdef.uv_sec_strength:%s\nskip_mode_frame: %s\n"
81 		  "primary_ref_frame: %u\nloop_restoration.flags: %s\n"
82 		  "loop_restoration.lr_unit_shift: %u\nloop_restoration.lr_uv_shift: %u\n"
83 		  "loop_restoration.frame_restoration_type: %s\n"
84 		  "loop_restoration.loop_restoration_size: %s\nflags: %s\norder_hint: %u\n"
85 		  "upscaled_width: %u\nframe_width_minus_1: %u\nframe_height_minus_1: %u\n"
86 		  "render_width_minus_1: %u\nrender_height_minus_1: %u\ncurrent_frame_id: %u\n"
87 		  "buffer_removal_time: %s\norder_hints: %s\nreference_frame_ts: %s\n"
88 		  "ref_frame_idx: %s\nrefresh_frame_flags: %u\n",
89 		  __print_flags(__entry->f.tile_info.flags, "|",
90 		  {V4L2_AV1_TILE_INFO_FLAG_UNIFORM_TILE_SPACING, "UNIFORM_TILE_SPACING"}),
91 		  __entry->f.tile_info.context_update_tile_id,
92 		  __entry->f.tile_info.tile_cols,
93 		  __entry->f.tile_info.tile_rows,
94 		  __print_array(__entry->f.tile_info.mi_col_starts,
95 				ARRAY_SIZE(__entry->f.tile_info.mi_col_starts),
96 				sizeof(__entry->f.tile_info.mi_col_starts[0])),
97 		  __print_array(__entry->f.tile_info.mi_row_starts,
98 				ARRAY_SIZE(__entry->f.tile_info.mi_row_starts),
99 				sizeof(__entry->f.tile_info.mi_row_starts[0])),
100 		  __print_array(__entry->f.tile_info.width_in_sbs_minus_1,
101 				ARRAY_SIZE(__entry->f.tile_info.width_in_sbs_minus_1),
102 				sizeof(__entry->f.tile_info.width_in_sbs_minus_1[0])),
103 		  __print_array(__entry->f.tile_info.height_in_sbs_minus_1,
104 				ARRAY_SIZE(__entry->f.tile_info.height_in_sbs_minus_1),
105 				sizeof(__entry->f.tile_info.height_in_sbs_minus_1[0])),
106 		  __entry->f.tile_info.tile_size_bytes,
107 		  __print_flags(__entry->f.quantization.flags, "|",
108 		  {V4L2_AV1_QUANTIZATION_FLAG_DIFF_UV_DELTA, "DIFF_UV_DELTA"},
109 		  {V4L2_AV1_QUANTIZATION_FLAG_USING_QMATRIX, "USING_QMATRIX"},
110 		  {V4L2_AV1_QUANTIZATION_FLAG_DELTA_Q_PRESENT, "DELTA_Q_PRESENT"}),
111 		  __entry->f.quantization.base_q_idx,
112 		  __entry->f.quantization.delta_q_y_dc,
113 		  __entry->f.quantization.delta_q_u_dc,
114 		  __entry->f.quantization.delta_q_u_ac,
115 		  __entry->f.quantization.delta_q_v_dc,
116 		  __entry->f.quantization.delta_q_v_ac,
117 		  __entry->f.quantization.qm_y,
118 		  __entry->f.quantization.qm_u,
119 		  __entry->f.quantization.qm_v,
120 		  __entry->f.quantization.delta_q_res,
121 		  __entry->f.superres_denom,
122 		  __print_flags(__entry->f.segmentation.flags, "|",
123 		  {V4L2_AV1_SEGMENTATION_FLAG_ENABLED, "ENABLED"},
124 		  {V4L2_AV1_SEGMENTATION_FLAG_UPDATE_MAP, "UPDATE_MAP"},
125 		  {V4L2_AV1_SEGMENTATION_FLAG_TEMPORAL_UPDATE, "TEMPORAL_UPDATE"},
126 		  {V4L2_AV1_SEGMENTATION_FLAG_UPDATE_DATA, "UPDATE_DATA"},
127 		  {V4L2_AV1_SEGMENTATION_FLAG_SEG_ID_PRE_SKIP, "SEG_ID_PRE_SKIP"}),
128 		  __entry->f.segmentation.last_active_seg_id,
129 		  __print_array(__entry->f.segmentation.feature_enabled,
130 				ARRAY_SIZE(__entry->f.segmentation.feature_enabled),
131 				sizeof(__entry->f.segmentation.feature_enabled[0])),
132 		  __print_flags(__entry->f.loop_filter.flags, "|",
133 		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_ENABLED, "DELTA_ENABLED"},
134 		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_UPDATE, "DELTA_UPDATE"},
135 		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_LF_PRESENT, "DELTA_LF_PRESENT"},
136 		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_LF_MULTI, "DELTA_LF_MULTI"}),
137 		  __print_array(__entry->f.loop_filter.level,
138 				ARRAY_SIZE(__entry->f.loop_filter.level),
139 				sizeof(__entry->f.loop_filter.level[0])),
140 		  __entry->f.loop_filter.sharpness,
141 		  __print_array(__entry->f.loop_filter.ref_deltas,
142 				ARRAY_SIZE(__entry->f.loop_filter.ref_deltas),
143 				sizeof(__entry->f.loop_filter.ref_deltas[0])),
144 		  __print_array(__entry->f.loop_filter.mode_deltas,
145 				ARRAY_SIZE(__entry->f.loop_filter.mode_deltas),
146 				sizeof(__entry->f.loop_filter.mode_deltas[0])),
147 		  __entry->f.loop_filter.delta_lf_res,
148 		  __entry->f.cdef.damping_minus_3,
149 		  __entry->f.cdef.bits,
150 		  __print_array(__entry->f.cdef.y_pri_strength,
151 				ARRAY_SIZE(__entry->f.cdef.y_pri_strength),
152 				sizeof(__entry->f.cdef.y_pri_strength[0])),
153 		  __print_array(__entry->f.cdef.y_sec_strength,
154 				ARRAY_SIZE(__entry->f.cdef.y_sec_strength),
155 				sizeof(__entry->f.cdef.y_sec_strength[0])),
156 		  __print_array(__entry->f.cdef.uv_pri_strength,
157 				ARRAY_SIZE(__entry->f.cdef.uv_pri_strength),
158 				sizeof(__entry->f.cdef.uv_pri_strength[0])),
159 		  __print_array(__entry->f.cdef.uv_sec_strength,
160 				ARRAY_SIZE(__entry->f.cdef.uv_sec_strength),
161 				sizeof(__entry->f.cdef.uv_sec_strength[0])),
162 		  __print_array(__entry->f.skip_mode_frame,
163 				ARRAY_SIZE(__entry->f.skip_mode_frame),
164 				sizeof(__entry->f.skip_mode_frame[0])),
165 		  __entry->f.primary_ref_frame,
166 		  __print_flags(__entry->f.loop_restoration.flags, "|",
167 		  {V4L2_AV1_LOOP_RESTORATION_FLAG_USES_LR, "USES_LR"},
168 		  {V4L2_AV1_LOOP_RESTORATION_FLAG_USES_CHROMA_LR, "USES_CHROMA_LR"}),
169 		  __entry->f.loop_restoration.lr_unit_shift,
170 		  __entry->f.loop_restoration.lr_uv_shift,
171 		  __print_array(__entry->f.loop_restoration.frame_restoration_type,
172 				ARRAY_SIZE(__entry->f.loop_restoration.frame_restoration_type),
173 				sizeof(__entry->f.loop_restoration.frame_restoration_type[0])),
174 		  __print_array(__entry->f.loop_restoration.loop_restoration_size,
175 				ARRAY_SIZE(__entry->f.loop_restoration.loop_restoration_size),
176 				sizeof(__entry->f.loop_restoration.loop_restoration_size[0])),
177 		  __print_flags(__entry->f.flags, "|",
178 		  {V4L2_AV1_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"},
179 		  {V4L2_AV1_FRAME_FLAG_SHOWABLE_FRAME, "SHOWABLE_FRAME"},
180 		  {V4L2_AV1_FRAME_FLAG_ERROR_RESILIENT_MODE, "ERROR_RESILIENT_MODE"},
181 		  {V4L2_AV1_FRAME_FLAG_DISABLE_CDF_UPDATE, "DISABLE_CDF_UPDATE"},
182 		  {V4L2_AV1_FRAME_FLAG_ALLOW_SCREEN_CONTENT_TOOLS, "ALLOW_SCREEN_CONTENT_TOOLS"},
183 		  {V4L2_AV1_FRAME_FLAG_FORCE_INTEGER_MV, "FORCE_INTEGER_MV"},
184 		  {V4L2_AV1_FRAME_FLAG_ALLOW_INTRABC, "ALLOW_INTRABC"},
185 		  {V4L2_AV1_FRAME_FLAG_USE_SUPERRES, "USE_SUPERRES"},
186 		  {V4L2_AV1_FRAME_FLAG_ALLOW_HIGH_PRECISION_MV, "ALLOW_HIGH_PRECISION_MV"},
187 		  {V4L2_AV1_FRAME_FLAG_IS_MOTION_MODE_SWITCHABLE, "IS_MOTION_MODE_SWITCHABLE"},
188 		  {V4L2_AV1_FRAME_FLAG_USE_REF_FRAME_MVS, "USE_REF_FRAME_MVS"},
189 		  {V4L2_AV1_FRAME_FLAG_DISABLE_FRAME_END_UPDATE_CDF,
190 		   "DISABLE_FRAME_END_UPDATE_CDF"},
191 		  {V4L2_AV1_FRAME_FLAG_ALLOW_WARPED_MOTION, "ALLOW_WARPED_MOTION"},
192 		  {V4L2_AV1_FRAME_FLAG_REFERENCE_SELECT, "REFERENCE_SELECT"},
193 		  {V4L2_AV1_FRAME_FLAG_REDUCED_TX_SET, "REDUCED_TX_SET"},
194 		  {V4L2_AV1_FRAME_FLAG_SKIP_MODE_ALLOWED, "SKIP_MODE_ALLOWED"},
195 		  {V4L2_AV1_FRAME_FLAG_SKIP_MODE_PRESENT, "SKIP_MODE_PRESENT"},
196 		  {V4L2_AV1_FRAME_FLAG_FRAME_SIZE_OVERRIDE, "FRAME_SIZE_OVERRIDE"},
197 		  {V4L2_AV1_FRAME_FLAG_BUFFER_REMOVAL_TIME_PRESENT, "BUFFER_REMOVAL_TIME_PRESENT"},
198 		  {V4L2_AV1_FRAME_FLAG_FRAME_REFS_SHORT_SIGNALING, "FRAME_REFS_SHORT_SIGNALING"}),
199 		  __entry->f.order_hint,
200 		  __entry->f.upscaled_width,
201 		  __entry->f.frame_width_minus_1,
202 		  __entry->f.frame_height_minus_1,
203 		  __entry->f.render_width_minus_1,
204 		  __entry->f.render_height_minus_1,
205 		  __entry->f.current_frame_id,
206 		  __print_array(__entry->f.buffer_removal_time,
207 				ARRAY_SIZE(__entry->f.buffer_removal_time),
208 				sizeof(__entry->f.buffer_removal_time[0])),
209 		  __print_array(__entry->f.order_hints,
210 				ARRAY_SIZE(__entry->f.order_hints),
211 				sizeof(__entry->f.order_hints[0])),
212 		  __print_array(__entry->f.reference_frame_ts,
213 				ARRAY_SIZE(__entry->f.reference_frame_ts),
214 				sizeof(__entry->f.reference_frame_ts[0])),
215 		  __print_array(__entry->f.ref_frame_idx,
216 				ARRAY_SIZE(__entry->f.ref_frame_idx),
217 				sizeof(__entry->f.ref_frame_idx[0])),
218 		  __entry->f.refresh_frame_flags
219 	)
220 );
221 
222 
223 DECLARE_EVENT_CLASS(v4l2_ctrl_av1_film_grain_tmpl,
224 	TP_PROTO(const struct v4l2_ctrl_av1_film_grain *f),
225 	TP_ARGS(f),
226 	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_film_grain, f)),
227 	TP_fast_assign(__entry->f = *f;),
228 	TP_printk("\nflags %s\ncr_mult: %u\ngrain_seed: %u\n"
229 		  "film_grain_params_ref_idx: %u\nnum_y_points: %u\npoint_y_value: %s\n"
230 		  "point_y_scaling: %s\nnum_cb_points: %u\npoint_cb_value: %s\n"
231 		  "point_cb_scaling: %s\nnum_cr_points: %u\npoint_cr_value: %s\n"
232 		  "point_cr_scaling: %s\ngrain_scaling_minus_8: %u\nar_coeff_lag: %u\n"
233 		  "ar_coeffs_y_plus_128: %s\nar_coeffs_cb_plus_128: %s\n"
234 		  "ar_coeffs_cr_plus_128: %s\nar_coeff_shift_minus_6: %u\n"
235 		  "grain_scale_shift: %u\ncb_mult: %u\ncb_luma_mult: %u\ncr_luma_mult: %u\n"
236 		  "cb_offset: %u\ncr_offset: %u\n",
237 		  __print_flags(__entry->f.flags, "|",
238 		  {V4L2_AV1_FILM_GRAIN_FLAG_APPLY_GRAIN, "APPLY_GRAIN"},
239 		  {V4L2_AV1_FILM_GRAIN_FLAG_UPDATE_GRAIN, "UPDATE_GRAIN"},
240 		  {V4L2_AV1_FILM_GRAIN_FLAG_CHROMA_SCALING_FROM_LUMA, "CHROMA_SCALING_FROM_LUMA"},
241 		  {V4L2_AV1_FILM_GRAIN_FLAG_OVERLAP, "OVERLAP"},
242 		  {V4L2_AV1_FILM_GRAIN_FLAG_CLIP_TO_RESTRICTED_RANGE, "CLIP_TO_RESTRICTED_RANGE"}),
243 		  __entry->f.cr_mult,
244 		  __entry->f.grain_seed,
245 		  __entry->f.film_grain_params_ref_idx,
246 		  __entry->f.num_y_points,
247 		  __print_array(__entry->f.point_y_value,
248 				ARRAY_SIZE(__entry->f.point_y_value),
249 				sizeof(__entry->f.point_y_value[0])),
250 		  __print_array(__entry->f.point_y_scaling,
251 				ARRAY_SIZE(__entry->f.point_y_scaling),
252 				sizeof(__entry->f.point_y_scaling[0])),
253 		  __entry->f.num_cb_points,
254 		  __print_array(__entry->f.point_cb_value,
255 				ARRAY_SIZE(__entry->f.point_cb_value),
256 				sizeof(__entry->f.point_cb_value[0])),
257 		  __print_array(__entry->f.point_cb_scaling,
258 				ARRAY_SIZE(__entry->f.point_cb_scaling),
259 				sizeof(__entry->f.point_cb_scaling[0])),
260 		  __entry->f.num_cr_points,
261 		  __print_array(__entry->f.point_cr_value,
262 				ARRAY_SIZE(__entry->f.point_cr_value),
263 				sizeof(__entry->f.point_cr_value[0])),
264 		  __print_array(__entry->f.point_cr_scaling,
265 				ARRAY_SIZE(__entry->f.point_cr_scaling),
266 				sizeof(__entry->f.point_cr_scaling[0])),
267 		  __entry->f.grain_scaling_minus_8,
268 		  __entry->f.ar_coeff_lag,
269 		  __print_array(__entry->f.ar_coeffs_y_plus_128,
270 				ARRAY_SIZE(__entry->f.ar_coeffs_y_plus_128),
271 				sizeof(__entry->f.ar_coeffs_y_plus_128[0])),
272 		  __print_array(__entry->f.ar_coeffs_cb_plus_128,
273 				ARRAY_SIZE(__entry->f.ar_coeffs_cb_plus_128),
274 				sizeof(__entry->f.ar_coeffs_cb_plus_128[0])),
275 		  __print_array(__entry->f.ar_coeffs_cr_plus_128,
276 				ARRAY_SIZE(__entry->f.ar_coeffs_cr_plus_128),
277 				sizeof(__entry->f.ar_coeffs_cr_plus_128[0])),
278 		  __entry->f.ar_coeff_shift_minus_6,
279 		  __entry->f.grain_scale_shift,
280 		  __entry->f.cb_mult,
281 		  __entry->f.cb_luma_mult,
282 		  __entry->f.cr_luma_mult,
283 		  __entry->f.cb_offset,
284 		  __entry->f.cr_offset
285 	)
286 )
287 
288 DEFINE_EVENT(v4l2_ctrl_av1_seq_tmpl, v4l2_ctrl_av1_sequence,
289 	TP_PROTO(const struct v4l2_ctrl_av1_sequence *s),
290 	TP_ARGS(s)
291 );
292 
293 DEFINE_EVENT(v4l2_ctrl_av1_frame_tmpl, v4l2_ctrl_av1_frame,
294 	TP_PROTO(const struct v4l2_ctrl_av1_frame *f),
295 	TP_ARGS(f)
296 );
297 
298 DEFINE_EVENT(v4l2_ctrl_av1_tge_tmpl, v4l2_ctrl_av1_tile_group_entry,
299 	TP_PROTO(const struct v4l2_ctrl_av1_tile_group_entry *t),
300 	TP_ARGS(t)
301 );
302 
303 DEFINE_EVENT(v4l2_ctrl_av1_film_grain_tmpl, v4l2_ctrl_av1_film_grain,
304 	TP_PROTO(const struct v4l2_ctrl_av1_film_grain *f),
305 	TP_ARGS(f)
306 );
307 
308 #endif
309 
310 #undef TRACE_INCLUDE_PATH
311 #undef TRACE_INCLUDE_FILE
312 #define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl
313 #define TRACE_INCLUDE_FILE visl-trace-av1
314 #include <trace/define_trace.h>
315