public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Nicolas Dufresne <nicolas.dufresne@collabora.com>
To: Detlev Casanova <detlev.casanova@collabora.com>,
	 linux-kernel@vger.kernel.org
Cc: Benjamin Gaignard <benjamin.gaignard@collabora.com>,
	Philipp Zabel	 <p.zabel@pengutronix.de>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Heiko Stuebner <heiko@sntech.de>,
	Daniel Almeida <daniel.almeida@collabora.com>,
	Steven Rostedt	 <rostedt@goodmis.org>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Hans Verkuil <hverkuil@kernel.org>,
	Laurent Pinchart	 <laurent.pinchart+renesas@ideasonboard.com>,
	Ricardo Ribalda	 <ribalda@chromium.org>,
	Yunke Cao <yunkec@google.com>,
	Sakari Ailus	 <sakari.ailus@linux.intel.com>,
	Pavan Bobba <opensource206@gmail.com>,
	James Cowgill <james.cowgill@blaize.com>,
	Ma Ke <make24@iscas.ac.cn>,
	Jacopo Mondi	 <jacopo.mondi@ideasonboard.com>,
	Daniel Scally <dan.scally@ideasonboard.com>,
		linux-media@vger.kernel.org, linux-rockchip@lists.infradead.org,
		linux-arm-kernel@lists.infradead.org,
	linux-trace-kernel@vger.kernel.org, 	kernel@collabora.com
Subject: Re: [PATCH 01/11] media: Move visl traces to v4l2-core
Date: Tue, 28 Apr 2026 15:27:23 -0400	[thread overview]
Message-ID: <514f697a6fe99b7af84df0f8d290fb479c847b11.camel@collabora.com> (raw)
In-Reply-To: <20260212162328.192217-2-detlev.casanova@collabora.com>

[-- Attachment #1: Type: text/plain, Size: 157842 bytes --]

Le jeudi 12 février 2026 à 11:23 -0500, Detlev Casanova a écrit :
> The visl driver defines traces for all stateless controls.
> Move those definition to a new v4l2_requests.h file and expose them for
> all drivers to use.
> 
> As each event can be enabled individually in userspace, group them all in
> the same v4l2_requests event folder.
> 
> Later, it can also be used by v4l2-core to trace controls as they are
> being set.
> 
> Signed-off-by: Detlev Casanova <detlev.casanova@collabora.com>
> ---
>  drivers/media/test-drivers/visl/Makefile      |    2 +-
>  drivers/media/test-drivers/visl/visl-dec.c    |    8 +-
>  .../media/test-drivers/visl/visl-trace-av1.h  |  314 ----
>  .../media/test-drivers/visl/visl-trace-fwht.h |   66 -
>  .../media/test-drivers/visl/visl-trace-h264.h |  349 ----
>  .../media/test-drivers/visl/visl-trace-hevc.h |  464 -----
>  .../test-drivers/visl/visl-trace-mpeg2.h      |   99 -
>  .../test-drivers/visl/visl-trace-points.c     |   11 -
>  .../media/test-drivers/visl/visl-trace-vp8.h  |  156 --
>  .../media/test-drivers/visl/visl-trace-vp9.h  |  292 ---
>  drivers/media/v4l2-core/v4l2-trace.c          |   45 +
>  include/trace/events/v4l2_requests.h          | 1645 +++++++++++++++++
>  12 files changed, 1692 insertions(+), 1759 deletions(-)
>  delete mode 100644 drivers/media/test-drivers/visl/visl-trace-av1.h
>  delete mode 100644 drivers/media/test-drivers/visl/visl-trace-fwht.h
>  delete mode 100644 drivers/media/test-drivers/visl/visl-trace-h264.h
>  delete mode 100644 drivers/media/test-drivers/visl/visl-trace-hevc.h
>  delete mode 100644 drivers/media/test-drivers/visl/visl-trace-mpeg2.h
>  delete mode 100644 drivers/media/test-drivers/visl/visl-trace-points.c
>  delete mode 100644 drivers/media/test-drivers/visl/visl-trace-vp8.h
>  delete mode 100644 drivers/media/test-drivers/visl/visl-trace-vp9.h
>  create mode 100644 include/trace/events/v4l2_requests.h

Might want to check if the name of that header make sense. This is tracing
compound control structures, which can't be traced generically otherwise, I
could imagine this to be extended to any compound controls ?

Nicolas

> 
> diff --git a/drivers/media/test-drivers/visl/Makefile b/drivers/media/test-drivers/visl/Makefile
> index fb4d5ae1b17f..a5049e2af844 100644
> --- a/drivers/media/test-drivers/visl/Makefile
> +++ b/drivers/media/test-drivers/visl/Makefile
> @@ -1,5 +1,5 @@
>  # SPDX-License-Identifier: GPL-2.0+
> -visl-y := visl-core.o visl-video.o visl-dec.o visl-trace-points.o
> +visl-y := visl-core.o visl-video.o visl-dec.o
>  
>  ifeq ($(CONFIG_VISL_DEBUGFS),y)
>    visl-y += visl-debugfs.o
> diff --git a/drivers/media/test-drivers/visl/visl-dec.c b/drivers/media/test-drivers/visl/visl-dec.c
> index 6bbf93757047..d49208e83726 100644
> --- a/drivers/media/test-drivers/visl/visl-dec.c
> +++ b/drivers/media/test-drivers/visl/visl-dec.c
> @@ -7,18 +7,12 @@
>  #include "visl.h"
>  #include "visl-debugfs.h"
>  #include "visl-dec.h"
> -#include "visl-trace-fwht.h"
> -#include "visl-trace-mpeg2.h"
> -#include "visl-trace-vp8.h"
> -#include "visl-trace-vp9.h"
> -#include "visl-trace-h264.h"
> -#include "visl-trace-hevc.h"
> -#include "visl-trace-av1.h"
>  
>  #include <linux/delay.h>
>  #include <linux/workqueue.h>
>  #include <media/v4l2-mem2mem.h>
>  #include <media/tpg/v4l2-tpg.h>
> +#include <trace/events/v4l2_requests.h>
>  
>  #define LAST_BUF_IDX (V4L2_AV1_REF_LAST_FRAME - V4L2_AV1_REF_LAST_FRAME)
>  #define LAST2_BUF_IDX (V4L2_AV1_REF_LAST2_FRAME - V4L2_AV1_REF_LAST_FRAME)
> diff --git a/drivers/media/test-drivers/visl/visl-trace-av1.h b/drivers/media/test-drivers/visl/visl-trace-av1.h
> deleted file mode 100644
> index 09f205de53df..000000000000
> --- a/drivers/media/test-drivers/visl/visl-trace-av1.h
> +++ /dev/null
> @@ -1,314 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -#if !defined(_VISL_TRACE_AV1_H_) || defined(TRACE_HEADER_MULTI_READ)
> -#define _VISL_TRACE_AV1_H_
> -
> -#include <linux/tracepoint.h>
> -#include "visl.h"
> -
> -#undef TRACE_SYSTEM
> -#define TRACE_SYSTEM visl_av1_controls
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_av1_seq_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_av1_sequence *s),
> -	TP_ARGS(s),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_sequence, s)),
> -	TP_fast_assign(__entry->s = *s;),
> -	TP_printk("\nflags %s\nseq_profile: %u\norder_hint_bits: %u\nbit_depth: %u\n"
> -		  "max_frame_width_minus_1: %u\nmax_frame_height_minus_1: %u\n",
> -		  __print_flags(__entry->s.flags, "|",
> -		  {V4L2_AV1_SEQUENCE_FLAG_STILL_PICTURE, "STILL_PICTURE"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_USE_128X128_SUPERBLOCK, "USE_128X128_SUPERBLOCK"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_FILTER_INTRA, "ENABLE_FILTER_INTRA"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_INTRA_EDGE_FILTER, "ENABLE_INTRA_EDGE_FILTER"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_INTERINTRA_COMPOUND, "ENABLE_INTERINTRA_COMPOUND"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_MASKED_COMPOUND, "ENABLE_MASKED_COMPOUND"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_WARPED_MOTION, "ENABLE_WARPED_MOTION"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_DUAL_FILTER, "ENABLE_DUAL_FILTER"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_ORDER_HINT, "ENABLE_ORDER_HINT"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_JNT_COMP, "ENABLE_JNT_COMP"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_REF_FRAME_MVS, "ENABLE_REF_FRAME_MVS"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_SUPERRES, "ENABLE_SUPERRES"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_CDEF, "ENABLE_CDEF"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_RESTORATION, "ENABLE_RESTORATION"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_MONO_CHROME, "MONO_CHROME"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_COLOR_RANGE, "COLOR_RANGE"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_SUBSAMPLING_X, "SUBSAMPLING_X"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_SUBSAMPLING_Y, "SUBSAMPLING_Y"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_FILM_GRAIN_PARAMS_PRESENT, "FILM_GRAIN_PARAMS_PRESENT"},
> -		  {V4L2_AV1_SEQUENCE_FLAG_SEPARATE_UV_DELTA_Q, "SEPARATE_UV_DELTA_Q"}),
> -		  __entry->s.seq_profile,
> -		  __entry->s.order_hint_bits,
> -		  __entry->s.bit_depth,
> -		  __entry->s.max_frame_width_minus_1,
> -		  __entry->s.max_frame_height_minus_1
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_av1_tge_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_av1_tile_group_entry *t),
> -	TP_ARGS(t),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_tile_group_entry, t)),
> -	TP_fast_assign(__entry->t = *t;),
> -	TP_printk("\ntile_offset: %u\n tile_size: %u\n tile_row: %u\ntile_col: %u\n",
> -		  __entry->t.tile_offset,
> -		  __entry->t.tile_size,
> -		  __entry->t.tile_row,
> -		  __entry->t.tile_col
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_av1_frame_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_av1_frame *f),
> -	TP_ARGS(f),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_frame, f)),
> -	TP_fast_assign(__entry->f = *f;),
> -	TP_printk("\ntile_info.flags: %s\ntile_info.context_update_tile_id: %u\n"
> -		  "tile_info.tile_cols: %u\ntile_info.tile_rows: %u\n"
> -		  "tile_info.mi_col_starts: %s\ntile_info.mi_row_starts: %s\n"
> -		  "tile_info.width_in_sbs_minus_1: %s\ntile_info.height_in_sbs_minus_1: %s\n"
> -		  "tile_info.tile_size_bytes: %u\nquantization.flags: %s\n"
> -		  "quantization.base_q_idx: %u\nquantization.delta_q_y_dc: %d\n"
> -		  "quantization.delta_q_u_dc: %d\nquantization.delta_q_u_ac: %d\n"
> -		  "quantization.delta_q_v_dc: %d\nquantization.delta_q_v_ac: %d\n"
> -		  "quantization.qm_y: %u\nquantization.qm_u: %u\nquantization.qm_v: %u\n"
> -		  "quantization.delta_q_res: %u\nsuperres_denom: %u\nsegmentation.flags: %s\n"
> -		  "segmentation.last_active_seg_id: %u\nsegmentation.feature_enabled:%s\n"
> -		  "loop_filter.flags: %s\nloop_filter.level: %s\nloop_filter.sharpness: %u\n"
> -		  "loop_filter.ref_deltas: %s\nloop_filter.mode_deltas: %s\n"
> -		  "loop_filter.delta_lf_res: %u\ncdef.damping_minus_3: %u\ncdef.bits: %u\n"
> -		  "cdef.y_pri_strength: %s\ncdef.y_sec_strength: %s\n"
> -		  "cdef.uv_pri_strength: %s\ncdef.uv_sec_strength:%s\nskip_mode_frame: %s\n"
> -		  "primary_ref_frame: %u\nloop_restoration.flags: %s\n"
> -		  "loop_restoration.lr_unit_shift: %u\nloop_restoration.lr_uv_shift: %u\n"
> -		  "loop_restoration.frame_restoration_type: %s\n"
> -		  "loop_restoration.loop_restoration_size: %s\nflags: %s\norder_hint: %u\n"
> -		  "upscaled_width: %u\nframe_width_minus_1: %u\nframe_height_minus_1: %u\n"
> -		  "render_width_minus_1: %u\nrender_height_minus_1: %u\ncurrent_frame_id: %u\n"
> -		  "buffer_removal_time: %s\norder_hints: %s\nreference_frame_ts: %s\n"
> -		  "ref_frame_idx: %s\nrefresh_frame_flags: %u\n",
> -		  __print_flags(__entry->f.tile_info.flags, "|",
> -		  {V4L2_AV1_TILE_INFO_FLAG_UNIFORM_TILE_SPACING, "UNIFORM_TILE_SPACING"}),
> -		  __entry->f.tile_info.context_update_tile_id,
> -		  __entry->f.tile_info.tile_cols,
> -		  __entry->f.tile_info.tile_rows,
> -		  __print_array(__entry->f.tile_info.mi_col_starts,
> -				ARRAY_SIZE(__entry->f.tile_info.mi_col_starts),
> -				sizeof(__entry->f.tile_info.mi_col_starts[0])),
> -		  __print_array(__entry->f.tile_info.mi_row_starts,
> -				ARRAY_SIZE(__entry->f.tile_info.mi_row_starts),
> -				sizeof(__entry->f.tile_info.mi_row_starts[0])),
> -		  __print_array(__entry->f.tile_info.width_in_sbs_minus_1,
> -				ARRAY_SIZE(__entry->f.tile_info.width_in_sbs_minus_1),
> -				sizeof(__entry->f.tile_info.width_in_sbs_minus_1[0])),
> -		  __print_array(__entry->f.tile_info.height_in_sbs_minus_1,
> -				ARRAY_SIZE(__entry->f.tile_info.height_in_sbs_minus_1),
> -				sizeof(__entry->f.tile_info.height_in_sbs_minus_1[0])),
> -		  __entry->f.tile_info.tile_size_bytes,
> -		  __print_flags(__entry->f.quantization.flags, "|",
> -		  {V4L2_AV1_QUANTIZATION_FLAG_DIFF_UV_DELTA, "DIFF_UV_DELTA"},
> -		  {V4L2_AV1_QUANTIZATION_FLAG_USING_QMATRIX, "USING_QMATRIX"},
> -		  {V4L2_AV1_QUANTIZATION_FLAG_DELTA_Q_PRESENT, "DELTA_Q_PRESENT"}),
> -		  __entry->f.quantization.base_q_idx,
> -		  __entry->f.quantization.delta_q_y_dc,
> -		  __entry->f.quantization.delta_q_u_dc,
> -		  __entry->f.quantization.delta_q_u_ac,
> -		  __entry->f.quantization.delta_q_v_dc,
> -		  __entry->f.quantization.delta_q_v_ac,
> -		  __entry->f.quantization.qm_y,
> -		  __entry->f.quantization.qm_u,
> -		  __entry->f.quantization.qm_v,
> -		  __entry->f.quantization.delta_q_res,
> -		  __entry->f.superres_denom,
> -		  __print_flags(__entry->f.segmentation.flags, "|",
> -		  {V4L2_AV1_SEGMENTATION_FLAG_ENABLED, "ENABLED"},
> -		  {V4L2_AV1_SEGMENTATION_FLAG_UPDATE_MAP, "UPDATE_MAP"},
> -		  {V4L2_AV1_SEGMENTATION_FLAG_TEMPORAL_UPDATE, "TEMPORAL_UPDATE"},
> -		  {V4L2_AV1_SEGMENTATION_FLAG_UPDATE_DATA, "UPDATE_DATA"},
> -		  {V4L2_AV1_SEGMENTATION_FLAG_SEG_ID_PRE_SKIP, "SEG_ID_PRE_SKIP"}),
> -		  __entry->f.segmentation.last_active_seg_id,
> -		  __print_array(__entry->f.segmentation.feature_enabled,
> -				ARRAY_SIZE(__entry->f.segmentation.feature_enabled),
> -				sizeof(__entry->f.segmentation.feature_enabled[0])),
> -		  __print_flags(__entry->f.loop_filter.flags, "|",
> -		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_ENABLED, "DELTA_ENABLED"},
> -		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_UPDATE, "DELTA_UPDATE"},
> -		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_LF_PRESENT, "DELTA_LF_PRESENT"},
> -		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_LF_MULTI, "DELTA_LF_MULTI"}),
> -		  __print_array(__entry->f.loop_filter.level,
> -				ARRAY_SIZE(__entry->f.loop_filter.level),
> -				sizeof(__entry->f.loop_filter.level[0])),
> -		  __entry->f.loop_filter.sharpness,
> -		  __print_array(__entry->f.loop_filter.ref_deltas,
> -				ARRAY_SIZE(__entry->f.loop_filter.ref_deltas),
> -				sizeof(__entry->f.loop_filter.ref_deltas[0])),
> -		  __print_array(__entry->f.loop_filter.mode_deltas,
> -				ARRAY_SIZE(__entry->f.loop_filter.mode_deltas),
> -				sizeof(__entry->f.loop_filter.mode_deltas[0])),
> -		  __entry->f.loop_filter.delta_lf_res,
> -		  __entry->f.cdef.damping_minus_3,
> -		  __entry->f.cdef.bits,
> -		  __print_array(__entry->f.cdef.y_pri_strength,
> -				ARRAY_SIZE(__entry->f.cdef.y_pri_strength),
> -				sizeof(__entry->f.cdef.y_pri_strength[0])),
> -		  __print_array(__entry->f.cdef.y_sec_strength,
> -				ARRAY_SIZE(__entry->f.cdef.y_sec_strength),
> -				sizeof(__entry->f.cdef.y_sec_strength[0])),
> -		  __print_array(__entry->f.cdef.uv_pri_strength,
> -				ARRAY_SIZE(__entry->f.cdef.uv_pri_strength),
> -				sizeof(__entry->f.cdef.uv_pri_strength[0])),
> -		  __print_array(__entry->f.cdef.uv_sec_strength,
> -				ARRAY_SIZE(__entry->f.cdef.uv_sec_strength),
> -				sizeof(__entry->f.cdef.uv_sec_strength[0])),
> -		  __print_array(__entry->f.skip_mode_frame,
> -				ARRAY_SIZE(__entry->f.skip_mode_frame),
> -				sizeof(__entry->f.skip_mode_frame[0])),
> -		  __entry->f.primary_ref_frame,
> -		  __print_flags(__entry->f.loop_restoration.flags, "|",
> -		  {V4L2_AV1_LOOP_RESTORATION_FLAG_USES_LR, "USES_LR"},
> -		  {V4L2_AV1_LOOP_RESTORATION_FLAG_USES_CHROMA_LR, "USES_CHROMA_LR"}),
> -		  __entry->f.loop_restoration.lr_unit_shift,
> -		  __entry->f.loop_restoration.lr_uv_shift,
> -		  __print_array(__entry->f.loop_restoration.frame_restoration_type,
> -				ARRAY_SIZE(__entry->f.loop_restoration.frame_restoration_type),
> -				sizeof(__entry->f.loop_restoration.frame_restoration_type[0])),
> -		  __print_array(__entry->f.loop_restoration.loop_restoration_size,
> -				ARRAY_SIZE(__entry->f.loop_restoration.loop_restoration_size),
> -				sizeof(__entry->f.loop_restoration.loop_restoration_size[0])),
> -		  __print_flags(__entry->f.flags, "|",
> -		  {V4L2_AV1_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"},
> -		  {V4L2_AV1_FRAME_FLAG_SHOWABLE_FRAME, "SHOWABLE_FRAME"},
> -		  {V4L2_AV1_FRAME_FLAG_ERROR_RESILIENT_MODE, "ERROR_RESILIENT_MODE"},
> -		  {V4L2_AV1_FRAME_FLAG_DISABLE_CDF_UPDATE, "DISABLE_CDF_UPDATE"},
> -		  {V4L2_AV1_FRAME_FLAG_ALLOW_SCREEN_CONTENT_TOOLS, "ALLOW_SCREEN_CONTENT_TOOLS"},
> -		  {V4L2_AV1_FRAME_FLAG_FORCE_INTEGER_MV, "FORCE_INTEGER_MV"},
> -		  {V4L2_AV1_FRAME_FLAG_ALLOW_INTRABC, "ALLOW_INTRABC"},
> -		  {V4L2_AV1_FRAME_FLAG_USE_SUPERRES, "USE_SUPERRES"},
> -		  {V4L2_AV1_FRAME_FLAG_ALLOW_HIGH_PRECISION_MV, "ALLOW_HIGH_PRECISION_MV"},
> -		  {V4L2_AV1_FRAME_FLAG_IS_MOTION_MODE_SWITCHABLE, "IS_MOTION_MODE_SWITCHABLE"},
> -		  {V4L2_AV1_FRAME_FLAG_USE_REF_FRAME_MVS, "USE_REF_FRAME_MVS"},
> -		  {V4L2_AV1_FRAME_FLAG_DISABLE_FRAME_END_UPDATE_CDF,
> -		   "DISABLE_FRAME_END_UPDATE_CDF"},
> -		  {V4L2_AV1_FRAME_FLAG_ALLOW_WARPED_MOTION, "ALLOW_WARPED_MOTION"},
> -		  {V4L2_AV1_FRAME_FLAG_REFERENCE_SELECT, "REFERENCE_SELECT"},
> -		  {V4L2_AV1_FRAME_FLAG_REDUCED_TX_SET, "REDUCED_TX_SET"},
> -		  {V4L2_AV1_FRAME_FLAG_SKIP_MODE_ALLOWED, "SKIP_MODE_ALLOWED"},
> -		  {V4L2_AV1_FRAME_FLAG_SKIP_MODE_PRESENT, "SKIP_MODE_PRESENT"},
> -		  {V4L2_AV1_FRAME_FLAG_FRAME_SIZE_OVERRIDE, "FRAME_SIZE_OVERRIDE"},
> -		  {V4L2_AV1_FRAME_FLAG_BUFFER_REMOVAL_TIME_PRESENT, "BUFFER_REMOVAL_TIME_PRESENT"},
> -		  {V4L2_AV1_FRAME_FLAG_FRAME_REFS_SHORT_SIGNALING, "FRAME_REFS_SHORT_SIGNALING"}),
> -		  __entry->f.order_hint,
> -		  __entry->f.upscaled_width,
> -		  __entry->f.frame_width_minus_1,
> -		  __entry->f.frame_height_minus_1,
> -		  __entry->f.render_width_minus_1,
> -		  __entry->f.render_height_minus_1,
> -		  __entry->f.current_frame_id,
> -		  __print_array(__entry->f.buffer_removal_time,
> -				ARRAY_SIZE(__entry->f.buffer_removal_time),
> -				sizeof(__entry->f.buffer_removal_time[0])),
> -		  __print_array(__entry->f.order_hints,
> -				ARRAY_SIZE(__entry->f.order_hints),
> -				sizeof(__entry->f.order_hints[0])),
> -		  __print_array(__entry->f.reference_frame_ts,
> -				ARRAY_SIZE(__entry->f.reference_frame_ts),
> -				sizeof(__entry->f.reference_frame_ts[0])),
> -		  __print_array(__entry->f.ref_frame_idx,
> -				ARRAY_SIZE(__entry->f.ref_frame_idx),
> -				sizeof(__entry->f.ref_frame_idx[0])),
> -		  __entry->f.refresh_frame_flags
> -	)
> -);
> -
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_av1_film_grain_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_av1_film_grain *f),
> -	TP_ARGS(f),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_film_grain, f)),
> -	TP_fast_assign(__entry->f = *f;),
> -	TP_printk("\nflags %s\ncr_mult: %u\ngrain_seed: %u\n"
> -		  "film_grain_params_ref_idx: %u\nnum_y_points: %u\npoint_y_value: %s\n"
> -		  "point_y_scaling: %s\nnum_cb_points: %u\npoint_cb_value: %s\n"
> -		  "point_cb_scaling: %s\nnum_cr_points: %u\npoint_cr_value: %s\n"
> -		  "point_cr_scaling: %s\ngrain_scaling_minus_8: %u\nar_coeff_lag: %u\n"
> -		  "ar_coeffs_y_plus_128: %s\nar_coeffs_cb_plus_128: %s\n"
> -		  "ar_coeffs_cr_plus_128: %s\nar_coeff_shift_minus_6: %u\n"
> -		  "grain_scale_shift: %u\ncb_mult: %u\ncb_luma_mult: %u\ncr_luma_mult: %u\n"
> -		  "cb_offset: %u\ncr_offset: %u\n",
> -		  __print_flags(__entry->f.flags, "|",
> -		  {V4L2_AV1_FILM_GRAIN_FLAG_APPLY_GRAIN, "APPLY_GRAIN"},
> -		  {V4L2_AV1_FILM_GRAIN_FLAG_UPDATE_GRAIN, "UPDATE_GRAIN"},
> -		  {V4L2_AV1_FILM_GRAIN_FLAG_CHROMA_SCALING_FROM_LUMA, "CHROMA_SCALING_FROM_LUMA"},
> -		  {V4L2_AV1_FILM_GRAIN_FLAG_OVERLAP, "OVERLAP"},
> -		  {V4L2_AV1_FILM_GRAIN_FLAG_CLIP_TO_RESTRICTED_RANGE, "CLIP_TO_RESTRICTED_RANGE"}),
> -		  __entry->f.cr_mult,
> -		  __entry->f.grain_seed,
> -		  __entry->f.film_grain_params_ref_idx,
> -		  __entry->f.num_y_points,
> -		  __print_array(__entry->f.point_y_value,
> -				ARRAY_SIZE(__entry->f.point_y_value),
> -				sizeof(__entry->f.point_y_value[0])),
> -		  __print_array(__entry->f.point_y_scaling,
> -				ARRAY_SIZE(__entry->f.point_y_scaling),
> -				sizeof(__entry->f.point_y_scaling[0])),
> -		  __entry->f.num_cb_points,
> -		  __print_array(__entry->f.point_cb_value,
> -				ARRAY_SIZE(__entry->f.point_cb_value),
> -				sizeof(__entry->f.point_cb_value[0])),
> -		  __print_array(__entry->f.point_cb_scaling,
> -				ARRAY_SIZE(__entry->f.point_cb_scaling),
> -				sizeof(__entry->f.point_cb_scaling[0])),
> -		  __entry->f.num_cr_points,
> -		  __print_array(__entry->f.point_cr_value,
> -				ARRAY_SIZE(__entry->f.point_cr_value),
> -				sizeof(__entry->f.point_cr_value[0])),
> -		  __print_array(__entry->f.point_cr_scaling,
> -				ARRAY_SIZE(__entry->f.point_cr_scaling),
> -				sizeof(__entry->f.point_cr_scaling[0])),
> -		  __entry->f.grain_scaling_minus_8,
> -		  __entry->f.ar_coeff_lag,
> -		  __print_array(__entry->f.ar_coeffs_y_plus_128,
> -				ARRAY_SIZE(__entry->f.ar_coeffs_y_plus_128),
> -				sizeof(__entry->f.ar_coeffs_y_plus_128[0])),
> -		  __print_array(__entry->f.ar_coeffs_cb_plus_128,
> -				ARRAY_SIZE(__entry->f.ar_coeffs_cb_plus_128),
> -				sizeof(__entry->f.ar_coeffs_cb_plus_128[0])),
> -		  __print_array(__entry->f.ar_coeffs_cr_plus_128,
> -				ARRAY_SIZE(__entry->f.ar_coeffs_cr_plus_128),
> -				sizeof(__entry->f.ar_coeffs_cr_plus_128[0])),
> -		  __entry->f.ar_coeff_shift_minus_6,
> -		  __entry->f.grain_scale_shift,
> -		  __entry->f.cb_mult,
> -		  __entry->f.cb_luma_mult,
> -		  __entry->f.cr_luma_mult,
> -		  __entry->f.cb_offset,
> -		  __entry->f.cr_offset
> -	)
> -)
> -
> -DEFINE_EVENT(v4l2_ctrl_av1_seq_tmpl, v4l2_ctrl_av1_sequence,
> -	TP_PROTO(const struct v4l2_ctrl_av1_sequence *s),
> -	TP_ARGS(s)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_av1_frame_tmpl, v4l2_ctrl_av1_frame,
> -	TP_PROTO(const struct v4l2_ctrl_av1_frame *f),
> -	TP_ARGS(f)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_av1_tge_tmpl, v4l2_ctrl_av1_tile_group_entry,
> -	TP_PROTO(const struct v4l2_ctrl_av1_tile_group_entry *t),
> -	TP_ARGS(t)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_av1_film_grain_tmpl, v4l2_ctrl_av1_film_grain,
> -	TP_PROTO(const struct v4l2_ctrl_av1_film_grain *f),
> -	TP_ARGS(f)
> -);
> -
> -#endif
> -
> -#undef TRACE_INCLUDE_PATH
> -#undef TRACE_INCLUDE_FILE
> -#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl
> -#define TRACE_INCLUDE_FILE visl-trace-av1
> -#include <trace/define_trace.h>
> diff --git a/drivers/media/test-drivers/visl/visl-trace-fwht.h b/drivers/media/test-drivers/visl/visl-trace-fwht.h
> deleted file mode 100644
> index 54b119359ff5..000000000000
> --- a/drivers/media/test-drivers/visl/visl-trace-fwht.h
> +++ /dev/null
> @@ -1,66 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -#if !defined(_VISL_TRACE_FWHT_H_) || defined(TRACE_HEADER_MULTI_READ)
> -#define _VISL_TRACE_FWHT_H_
> -
> -#include <linux/tracepoint.h>
> -#include "visl.h"
> -
> -#undef TRACE_SYSTEM
> -#define TRACE_SYSTEM visl_fwht_controls
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_fwht_params_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_fwht_params *p),
> -	TP_ARGS(p),
> -	TP_STRUCT__entry(
> -			 __field(u64, backward_ref_ts)
> -			 __field(u32, version)
> -			 __field(u32, width)
> -			 __field(u32, height)
> -			 __field(u32, flags)
> -			 __field(u32, colorspace)
> -			 __field(u32, xfer_func)
> -			 __field(u32, ycbcr_enc)
> -			 __field(u32, quantization)
> -			 ),
> -	TP_fast_assign(
> -		       __entry->backward_ref_ts = p->backward_ref_ts;
> -		       __entry->version = p->version;
> -		       __entry->width = p->width;
> -		       __entry->height = p->height;
> -		       __entry->flags = p->flags;
> -		       __entry->colorspace = p->colorspace;
> -		       __entry->xfer_func = p->xfer_func;
> -		       __entry->ycbcr_enc = p->ycbcr_enc;
> -		       __entry->quantization = p->quantization;
> -		       ),
> -	TP_printk("backward_ref_ts %llu version %u width %u height %u flags %s colorspace %u xfer_func %u ycbcr_enc %u quantization %u",
> -		  __entry->backward_ref_ts, __entry->version, __entry->width, __entry->height,
> -		  __print_flags(__entry->flags, "|",
> -		  {V4L2_FWHT_FL_IS_INTERLACED, "IS_INTERLACED"},
> -		  {V4L2_FWHT_FL_IS_BOTTOM_FIRST, "IS_BOTTOM_FIRST"},
> -		  {V4L2_FWHT_FL_IS_ALTERNATE, "IS_ALTERNATE"},
> -		  {V4L2_FWHT_FL_IS_BOTTOM_FIELD, "IS_BOTTOM_FIELD"},
> -		  {V4L2_FWHT_FL_LUMA_IS_UNCOMPRESSED, "LUMA_IS_UNCOMPRESSED"},
> -		  {V4L2_FWHT_FL_CB_IS_UNCOMPRESSED, "CB_IS_UNCOMPRESSED"},
> -		  {V4L2_FWHT_FL_CR_IS_UNCOMPRESSED, "CR_IS_UNCOMPRESSED"},
> -		  {V4L2_FWHT_FL_ALPHA_IS_UNCOMPRESSED, "ALPHA_IS_UNCOMPRESSED"},
> -		  {V4L2_FWHT_FL_I_FRAME, "I_FRAME"},
> -		  {V4L2_FWHT_FL_PIXENC_HSV, "PIXENC_HSV"},
> -		  {V4L2_FWHT_FL_PIXENC_RGB, "PIXENC_RGB"},
> -		  {V4L2_FWHT_FL_PIXENC_YUV, "PIXENC_YUV"}),
> -		  __entry->colorspace, __entry->xfer_func, __entry->ycbcr_enc,
> -		  __entry->quantization)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_fwht_params_tmpl, v4l2_ctrl_fwht_params,
> -	TP_PROTO(const struct v4l2_ctrl_fwht_params *p),
> -	TP_ARGS(p)
> -);
> -
> -#endif
> -
> -#undef TRACE_INCLUDE_PATH
> -#undef TRACE_INCLUDE_FILE
> -#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl
> -#define TRACE_INCLUDE_FILE visl-trace-fwht
> -#include <trace/define_trace.h>
> diff --git a/drivers/media/test-drivers/visl/visl-trace-h264.h b/drivers/media/test-drivers/visl/visl-trace-h264.h
> deleted file mode 100644
> index d84296a01deb..000000000000
> --- a/drivers/media/test-drivers/visl/visl-trace-h264.h
> +++ /dev/null
> @@ -1,349 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -#if !defined(_VISL_TRACE_H264_H_) || defined(TRACE_HEADER_MULTI_READ)
> -#define _VISL_TRACE_H264_H_
> -
> -#include <linux/tracepoint.h>
> -#include "visl.h"
> -
> -#undef TRACE_SYSTEM
> -#define TRACE_SYSTEM visl_h264_controls
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_h264_sps_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_h264_sps *s),
> -	TP_ARGS(s),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_sps, s)),
> -	TP_fast_assign(__entry->s = *s),
> -	TP_printk("\nprofile_idc %u\n"
> -		  "constraint_set_flags %s\n"
> -		  "level_idc %u\n"
> -		  "seq_parameter_set_id %u\n"
> -		  "chroma_format_idc %u\n"
> -		  "bit_depth_luma_minus8 %u\n"
> -		  "bit_depth_chroma_minus8 %u\n"
> -		  "log2_max_frame_num_minus4 %u\n"
> -		  "pic_order_cnt_type %u\n"
> -		  "log2_max_pic_order_cnt_lsb_minus4 %u\n"
> -		  "max_num_ref_frames %u\n"
> -		  "num_ref_frames_in_pic_order_cnt_cycle %u\n"
> -		  "offset_for_ref_frame %s\n"
> -		  "offset_for_non_ref_pic %d\n"
> -		  "offset_for_top_to_bottom_field %d\n"
> -		  "pic_width_in_mbs_minus1 %u\n"
> -		  "pic_height_in_map_units_minus1 %u\n"
> -		  "flags %s",
> -		  __entry->s.profile_idc,
> -		  __print_flags(__entry->s.constraint_set_flags, "|",
> -		  {V4L2_H264_SPS_CONSTRAINT_SET0_FLAG, "CONSTRAINT_SET0_FLAG"},
> -		  {V4L2_H264_SPS_CONSTRAINT_SET1_FLAG, "CONSTRAINT_SET1_FLAG"},
> -		  {V4L2_H264_SPS_CONSTRAINT_SET2_FLAG, "CONSTRAINT_SET2_FLAG"},
> -		  {V4L2_H264_SPS_CONSTRAINT_SET3_FLAG, "CONSTRAINT_SET3_FLAG"},
> -		  {V4L2_H264_SPS_CONSTRAINT_SET4_FLAG, "CONSTRAINT_SET4_FLAG"},
> -		  {V4L2_H264_SPS_CONSTRAINT_SET5_FLAG, "CONSTRAINT_SET5_FLAG"}),
> -		  __entry->s.level_idc,
> -		  __entry->s.seq_parameter_set_id,
> -		  __entry->s.chroma_format_idc,
> -		  __entry->s.bit_depth_luma_minus8,
> -		  __entry->s.bit_depth_chroma_minus8,
> -		  __entry->s.log2_max_frame_num_minus4,
> -		  __entry->s.pic_order_cnt_type,
> -		  __entry->s.log2_max_pic_order_cnt_lsb_minus4,
> -		  __entry->s.max_num_ref_frames,
> -		  __entry->s.num_ref_frames_in_pic_order_cnt_cycle,
> -		  __print_array(__entry->s.offset_for_ref_frame,
> -				ARRAY_SIZE(__entry->s.offset_for_ref_frame),
> -				sizeof(__entry->s.offset_for_ref_frame[0])),
> -		  __entry->s.offset_for_non_ref_pic,
> -		  __entry->s.offset_for_top_to_bottom_field,
> -		  __entry->s.pic_width_in_mbs_minus1,
> -		  __entry->s.pic_height_in_map_units_minus1,
> -		  __print_flags(__entry->s.flags, "|",
> -		  {V4L2_H264_SPS_FLAG_SEPARATE_COLOUR_PLANE, "SEPARATE_COLOUR_PLANE"},
> -		  {V4L2_H264_SPS_FLAG_QPPRIME_Y_ZERO_TRANSFORM_BYPASS, "QPPRIME_Y_ZERO_TRANSFORM_BYPASS"},
> -		  {V4L2_H264_SPS_FLAG_DELTA_PIC_ORDER_ALWAYS_ZERO, "DELTA_PIC_ORDER_ALWAYS_ZERO"},
> -		  {V4L2_H264_SPS_FLAG_GAPS_IN_FRAME_NUM_VALUE_ALLOWED, "GAPS_IN_FRAME_NUM_VALUE_ALLOWED"},
> -		  {V4L2_H264_SPS_FLAG_FRAME_MBS_ONLY, "FRAME_MBS_ONLY"},
> -		  {V4L2_H264_SPS_FLAG_MB_ADAPTIVE_FRAME_FIELD, "MB_ADAPTIVE_FRAME_FIELD"},
> -		  {V4L2_H264_SPS_FLAG_DIRECT_8X8_INFERENCE, "DIRECT_8X8_INFERENCE"}
> -		  ))
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_h264_pps_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_h264_pps *p),
> -	TP_ARGS(p),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_pps, p)),
> -	TP_fast_assign(__entry->p = *p),
> -	TP_printk("\npic_parameter_set_id %u\n"
> -		  "seq_parameter_set_id %u\n"
> -		  "num_slice_groups_minus1 %u\n"
> -		  "num_ref_idx_l0_default_active_minus1 %u\n"
> -		  "num_ref_idx_l1_default_active_minus1 %u\n"
> -		  "weighted_bipred_idc %u\n"
> -		  "pic_init_qp_minus26 %d\n"
> -		  "pic_init_qs_minus26 %d\n"
> -		  "chroma_qp_index_offset %d\n"
> -		  "second_chroma_qp_index_offset %d\n"
> -		  "flags %s",
> -		  __entry->p.pic_parameter_set_id,
> -		  __entry->p.seq_parameter_set_id,
> -		  __entry->p.num_slice_groups_minus1,
> -		  __entry->p.num_ref_idx_l0_default_active_minus1,
> -		  __entry->p.num_ref_idx_l1_default_active_minus1,
> -		  __entry->p.weighted_bipred_idc,
> -		  __entry->p.pic_init_qp_minus26,
> -		  __entry->p.pic_init_qs_minus26,
> -		  __entry->p.chroma_qp_index_offset,
> -		  __entry->p.second_chroma_qp_index_offset,
> -		  __print_flags(__entry->p.flags, "|",
> -		  {V4L2_H264_PPS_FLAG_ENTROPY_CODING_MODE, "ENTROPY_CODING_MODE"},
> -		  {V4L2_H264_PPS_FLAG_BOTTOM_FIELD_PIC_ORDER_IN_FRAME_PRESENT, "BOTTOM_FIELD_PIC_ORDER_IN_FRAME_PRESENT"},
> -		  {V4L2_H264_PPS_FLAG_WEIGHTED_PRED, "WEIGHTED_PRED"},
> -		  {V4L2_H264_PPS_FLAG_DEBLOCKING_FILTER_CONTROL_PRESENT, "DEBLOCKING_FILTER_CONTROL_PRESENT"},
> -		  {V4L2_H264_PPS_FLAG_CONSTRAINED_INTRA_PRED, "CONSTRAINED_INTRA_PRED"},
> -		  {V4L2_H264_PPS_FLAG_REDUNDANT_PIC_CNT_PRESENT, "REDUNDANT_PIC_CNT_PRESENT"},
> -		  {V4L2_H264_PPS_FLAG_TRANSFORM_8X8_MODE, "TRANSFORM_8X8_MODE"},
> -		  {V4L2_H264_PPS_FLAG_SCALING_MATRIX_PRESENT, "SCALING_MATRIX_PRESENT"}
> -		  ))
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_h264_scaling_matrix_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_h264_scaling_matrix *s),
> -	TP_ARGS(s),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_scaling_matrix, s)),
> -	TP_fast_assign(__entry->s = *s),
> -	TP_printk("\nscaling_list_4x4 {%s}\nscaling_list_8x8 {%s}",
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->s.scaling_list_4x4,
> -				   sizeof(__entry->s.scaling_list_4x4),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->s.scaling_list_8x8,
> -				   sizeof(__entry->s.scaling_list_8x8),
> -				   false)
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_h264_pred_weights_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_h264_pred_weights *p),
> -	TP_ARGS(p),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_pred_weights, p)),
> -	TP_fast_assign(__entry->p = *p),
> -	TP_printk("\nluma_log2_weight_denom %u\n"
> -		  "chroma_log2_weight_denom %u\n"
> -		  "weight_factor[0].luma_weight %s\n"
> -		  "weight_factor[0].luma_offset %s\n"
> -		  "weight_factor[0].chroma_weight {%s}\n"
> -		  "weight_factor[0].chroma_offset {%s}\n"
> -		  "weight_factor[1].luma_weight %s\n"
> -		  "weight_factor[1].luma_offset %s\n"
> -		  "weight_factor[1].chroma_weight {%s}\n"
> -		  "weight_factor[1].chroma_offset {%s}\n",
> -		  __entry->p.luma_log2_weight_denom,
> -		  __entry->p.chroma_log2_weight_denom,
> -		  __print_array(__entry->p.weight_factors[0].luma_weight,
> -				ARRAY_SIZE(__entry->p.weight_factors[0].luma_weight),
> -				sizeof(__entry->p.weight_factors[0].luma_weight[0])),
> -		  __print_array(__entry->p.weight_factors[0].luma_offset,
> -				ARRAY_SIZE(__entry->p.weight_factors[0].luma_offset),
> -				sizeof(__entry->p.weight_factors[0].luma_offset[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.weight_factors[0].chroma_weight,
> -				   sizeof(__entry->p.weight_factors[0].chroma_weight),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.weight_factors[0].chroma_offset,
> -				   sizeof(__entry->p.weight_factors[0].chroma_offset),
> -				   false),
> -		  __print_array(__entry->p.weight_factors[1].luma_weight,
> -				ARRAY_SIZE(__entry->p.weight_factors[1].luma_weight),
> -				sizeof(__entry->p.weight_factors[1].luma_weight[0])),
> -		  __print_array(__entry->p.weight_factors[1].luma_offset,
> -				ARRAY_SIZE(__entry->p.weight_factors[1].luma_offset),
> -				sizeof(__entry->p.weight_factors[1].luma_offset[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.weight_factors[1].chroma_weight,
> -				   sizeof(__entry->p.weight_factors[1].chroma_weight),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.weight_factors[1].chroma_offset,
> -				   sizeof(__entry->p.weight_factors[1].chroma_offset),
> -				   false)
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_h264_slice_params_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_h264_slice_params *s),
> -	TP_ARGS(s),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_slice_params, s)),
> -	TP_fast_assign(__entry->s = *s),
> -	TP_printk("\nheader_bit_size %u\n"
> -		  "first_mb_in_slice %u\n"
> -		  "slice_type %s\n"
> -		  "colour_plane_id %u\n"
> -		  "redundant_pic_cnt %u\n"
> -		  "cabac_init_idc %u\n"
> -		  "slice_qp_delta %d\n"
> -		  "slice_qs_delta %d\n"
> -		  "disable_deblocking_filter_idc %u\n"
> -		  "slice_alpha_c0_offset_div2 %u\n"
> -		  "slice_beta_offset_div2 %u\n"
> -		  "num_ref_idx_l0_active_minus1 %u\n"
> -		  "num_ref_idx_l1_active_minus1 %u\n"
> -		  "flags %s",
> -		  __entry->s.header_bit_size,
> -		  __entry->s.first_mb_in_slice,
> -		  __print_symbolic(__entry->s.slice_type,
> -		  {V4L2_H264_SLICE_TYPE_P, "P"},
> -		  {V4L2_H264_SLICE_TYPE_B, "B"},
> -		  {V4L2_H264_SLICE_TYPE_I, "I"},
> -		  {V4L2_H264_SLICE_TYPE_SP, "SP"},
> -		  {V4L2_H264_SLICE_TYPE_SI, "SI"}),
> -		  __entry->s.colour_plane_id,
> -		  __entry->s.redundant_pic_cnt,
> -		  __entry->s.cabac_init_idc,
> -		  __entry->s.slice_qp_delta,
> -		  __entry->s.slice_qs_delta,
> -		  __entry->s.disable_deblocking_filter_idc,
> -		  __entry->s.slice_alpha_c0_offset_div2,
> -		  __entry->s.slice_beta_offset_div2,
> -		  __entry->s.num_ref_idx_l0_active_minus1,
> -		  __entry->s.num_ref_idx_l1_active_minus1,
> -		  __print_flags(__entry->s.flags, "|",
> -		  {V4L2_H264_SLICE_FLAG_DIRECT_SPATIAL_MV_PRED, "DIRECT_SPATIAL_MV_PRED"},
> -		  {V4L2_H264_SLICE_FLAG_SP_FOR_SWITCH, "SP_FOR_SWITCH"})
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_h264_reference_tmpl,
> -	TP_PROTO(const struct v4l2_h264_reference *r, int i),
> -	TP_ARGS(r, i),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_h264_reference, r)
> -			 __field(int, i)),
> -	TP_fast_assign(__entry->r = *r; __entry->i = i;),
> -	TP_printk("[%d]: fields %s index %u",
> -		  __entry->i,
> -		  __print_flags(__entry->r.fields, "|",
> -		  {V4L2_H264_TOP_FIELD_REF, "TOP_FIELD_REF"},
> -		  {V4L2_H264_BOTTOM_FIELD_REF, "BOTTOM_FIELD_REF"},
> -		  {V4L2_H264_FRAME_REF, "FRAME_REF"}),
> -		  __entry->r.index
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_h264_decode_params_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_h264_decode_params *d),
> -	TP_ARGS(d),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_decode_params, d)),
> -	TP_fast_assign(__entry->d = *d),
> -	TP_printk("\nnal_ref_idc %u\n"
> -		  "frame_num %u\n"
> -		  "top_field_order_cnt %d\n"
> -		  "bottom_field_order_cnt %d\n"
> -		  "idr_pic_id %u\n"
> -		  "pic_order_cnt_lsb %u\n"
> -		  "delta_pic_order_cnt_bottom %d\n"
> -		  "delta_pic_order_cnt0 %d\n"
> -		  "delta_pic_order_cnt1 %d\n"
> -		  "dec_ref_pic_marking_bit_size %u\n"
> -		  "pic_order_cnt_bit_size %u\n"
> -		  "slice_group_change_cycle %u\n"
> -		  "flags %s\n",
> -		  __entry->d.nal_ref_idc,
> -		  __entry->d.frame_num,
> -		  __entry->d.top_field_order_cnt,
> -		  __entry->d.bottom_field_order_cnt,
> -		  __entry->d.idr_pic_id,
> -		  __entry->d.pic_order_cnt_lsb,
> -		  __entry->d.delta_pic_order_cnt_bottom,
> -		  __entry->d.delta_pic_order_cnt0,
> -		  __entry->d.delta_pic_order_cnt1,
> -		  __entry->d.dec_ref_pic_marking_bit_size,
> -		  __entry->d.pic_order_cnt_bit_size,
> -		  __entry->d.slice_group_change_cycle,
> -		  __print_flags(__entry->d.flags, "|",
> -		  {V4L2_H264_DECODE_PARAM_FLAG_IDR_PIC, "IDR_PIC"},
> -		  {V4L2_H264_DECODE_PARAM_FLAG_FIELD_PIC, "FIELD_PIC"},
> -		  {V4L2_H264_DECODE_PARAM_FLAG_BOTTOM_FIELD, "BOTTOM_FIELD"},
> -		  {V4L2_H264_DECODE_PARAM_FLAG_PFRAME, "PFRAME"},
> -		  {V4L2_H264_DECODE_PARAM_FLAG_BFRAME, "BFRAME"})
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_h264_dpb_entry_tmpl,
> -	TP_PROTO(const struct v4l2_h264_dpb_entry *e, int i),
> -	TP_ARGS(e, i),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_h264_dpb_entry, e)
> -			 __field(int, i)),
> -	TP_fast_assign(__entry->e = *e; __entry->i = i;),
> -	TP_printk("[%d]: reference_ts %llu, pic_num %u frame_num %u fields %s "
> -		  "top_field_order_cnt %d bottom_field_order_cnt %d flags %s",
> -		  __entry->i,
> -		  __entry->e.reference_ts,
> -		  __entry->e.pic_num,
> -		  __entry->e.frame_num,
> -		  __print_flags(__entry->e.fields, "|",
> -		  {V4L2_H264_TOP_FIELD_REF, "TOP_FIELD_REF"},
> -		  {V4L2_H264_BOTTOM_FIELD_REF, "BOTTOM_FIELD_REF"},
> -		  {V4L2_H264_FRAME_REF, "FRAME_REF"}),
> -		  __entry->e.top_field_order_cnt,
> -		  __entry->e.bottom_field_order_cnt,
> -		  __print_flags(__entry->e.flags, "|",
> -		  {V4L2_H264_DPB_ENTRY_FLAG_VALID, "VALID"},
> -		  {V4L2_H264_DPB_ENTRY_FLAG_ACTIVE, "ACTIVE"},
> -		  {V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM, "LONG_TERM"},
> -		  {V4L2_H264_DPB_ENTRY_FLAG_FIELD, "FIELD"})
> -
> -	)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_h264_sps_tmpl, v4l2_ctrl_h264_sps,
> -	TP_PROTO(const struct v4l2_ctrl_h264_sps *s),
> -	TP_ARGS(s)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_h264_pps_tmpl, v4l2_ctrl_h264_pps,
> -	TP_PROTO(const struct v4l2_ctrl_h264_pps *p),
> -	TP_ARGS(p)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_h264_scaling_matrix_tmpl, v4l2_ctrl_h264_scaling_matrix,
> -	TP_PROTO(const struct v4l2_ctrl_h264_scaling_matrix *s),
> -	TP_ARGS(s)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_h264_pred_weights_tmpl, v4l2_ctrl_h264_pred_weights,
> -	TP_PROTO(const struct v4l2_ctrl_h264_pred_weights *p),
> -	TP_ARGS(p)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_h264_slice_params_tmpl, v4l2_ctrl_h264_slice_params,
> -	TP_PROTO(const struct v4l2_ctrl_h264_slice_params *s),
> -	TP_ARGS(s)
> -);
> -
> -DEFINE_EVENT(v4l2_h264_reference_tmpl, v4l2_h264_ref_pic_list0,
> -	TP_PROTO(const struct v4l2_h264_reference *r, int i),
> -	TP_ARGS(r, i)
> -);
> -
> -DEFINE_EVENT(v4l2_h264_reference_tmpl, v4l2_h264_ref_pic_list1,
> -	TP_PROTO(const struct v4l2_h264_reference *r, int i),
> -	TP_ARGS(r, i)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_h264_decode_params_tmpl, v4l2_ctrl_h264_decode_params,
> -	TP_PROTO(const struct v4l2_ctrl_h264_decode_params *d),
> -	TP_ARGS(d)
> -);
> -
> -DEFINE_EVENT(v4l2_h264_dpb_entry_tmpl, v4l2_h264_dpb_entry,
> -	TP_PROTO(const struct v4l2_h264_dpb_entry *e, int i),
> -	TP_ARGS(e, i)
> -);
> -
> -#endif
> -
> -#undef TRACE_INCLUDE_PATH
> -#undef TRACE_INCLUDE_FILE
> -#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl
> -#define TRACE_INCLUDE_FILE visl-trace-h264
> -#include <trace/define_trace.h>
> diff --git a/drivers/media/test-drivers/visl/visl-trace-hevc.h b/drivers/media/test-drivers/visl/visl-trace-hevc.h
> deleted file mode 100644
> index 963914c463db..000000000000
> --- a/drivers/media/test-drivers/visl/visl-trace-hevc.h
> +++ /dev/null
> @@ -1,464 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0+ */
> -#include "linux/v4l2-controls.h"
> -#if !defined(_VISL_TRACE_HEVC_H_) || defined(TRACE_HEADER_MULTI_READ)
> -#define _VISL_TRACE_HEVC_H_
> -
> -#include <linux/tracepoint.h>
> -#include "visl.h"
> -
> -#undef TRACE_SYSTEM
> -#define TRACE_SYSTEM visl_hevc_controls
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_sps_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_sps *s),
> -	TP_ARGS(s),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_sps, s)),
> -	TP_fast_assign(__entry->s = *s),
> -	TP_printk("\nvideo_parameter_set_id %u\n"
> -		  "seq_parameter_set_id %u\n"
> -		  "pic_width_in_luma_samples %u\n"
> -		  "pic_height_in_luma_samples %u\n"
> -		  "bit_depth_luma_minus8 %u\n"
> -		  "bit_depth_chroma_minus8 %u\n"
> -		  "log2_max_pic_order_cnt_lsb_minus4 %u\n"
> -		  "sps_max_dec_pic_buffering_minus1 %u\n"
> -		  "sps_max_num_reorder_pics %u\n"
> -		  "sps_max_latency_increase_plus1 %u\n"
> -		  "log2_min_luma_coding_block_size_minus3 %u\n"
> -		  "log2_diff_max_min_luma_coding_block_size %u\n"
> -		  "log2_min_luma_transform_block_size_minus2 %u\n"
> -		  "log2_diff_max_min_luma_transform_block_size %u\n"
> -		  "max_transform_hierarchy_depth_inter %u\n"
> -		  "max_transform_hierarchy_depth_intra %u\n"
> -		  "pcm_sample_bit_depth_luma_minus1 %u\n"
> -		  "pcm_sample_bit_depth_chroma_minus1 %u\n"
> -		  "log2_min_pcm_luma_coding_block_size_minus3 %u\n"
> -		  "log2_diff_max_min_pcm_luma_coding_block_size %u\n"
> -		  "num_short_term_ref_pic_sets %u\n"
> -		  "num_long_term_ref_pics_sps %u\n"
> -		  "chroma_format_idc %u\n"
> -		  "sps_max_sub_layers_minus1 %u\n"
> -		  "flags %s",
> -		  __entry->s.video_parameter_set_id,
> -		  __entry->s.seq_parameter_set_id,
> -		  __entry->s.pic_width_in_luma_samples,
> -		  __entry->s.pic_height_in_luma_samples,
> -		  __entry->s.bit_depth_luma_minus8,
> -		  __entry->s.bit_depth_chroma_minus8,
> -		  __entry->s.log2_max_pic_order_cnt_lsb_minus4,
> -		  __entry->s.sps_max_dec_pic_buffering_minus1,
> -		  __entry->s.sps_max_num_reorder_pics,
> -		  __entry->s.sps_max_latency_increase_plus1,
> -		  __entry->s.log2_min_luma_coding_block_size_minus3,
> -		  __entry->s.log2_diff_max_min_luma_coding_block_size,
> -		  __entry->s.log2_min_luma_transform_block_size_minus2,
> -		  __entry->s.log2_diff_max_min_luma_transform_block_size,
> -		  __entry->s.max_transform_hierarchy_depth_inter,
> -		  __entry->s.max_transform_hierarchy_depth_intra,
> -		  __entry->s.pcm_sample_bit_depth_luma_minus1,
> -		  __entry->s.pcm_sample_bit_depth_chroma_minus1,
> -		  __entry->s.log2_min_pcm_luma_coding_block_size_minus3,
> -		  __entry->s.log2_diff_max_min_pcm_luma_coding_block_size,
> -		  __entry->s.num_short_term_ref_pic_sets,
> -		  __entry->s.num_long_term_ref_pics_sps,
> -		  __entry->s.chroma_format_idc,
> -		  __entry->s.sps_max_sub_layers_minus1,
> -		  __print_flags(__entry->s.flags, "|",
> -		  {V4L2_HEVC_SPS_FLAG_SEPARATE_COLOUR_PLANE, "SEPARATE_COLOUR_PLANE"},
> -		  {V4L2_HEVC_SPS_FLAG_SCALING_LIST_ENABLED, "SCALING_LIST_ENABLED"},
> -		  {V4L2_HEVC_SPS_FLAG_AMP_ENABLED, "AMP_ENABLED"},
> -		  {V4L2_HEVC_SPS_FLAG_SAMPLE_ADAPTIVE_OFFSET, "SAMPLE_ADAPTIVE_OFFSET"},
> -		  {V4L2_HEVC_SPS_FLAG_PCM_ENABLED, "PCM_ENABLED"},
> -		  {V4L2_HEVC_SPS_FLAG_PCM_LOOP_FILTER_DISABLED, "V4L2_HEVC_SPS_FLAG_PCM_LOOP_FILTER_DISABLED"},
> -		  {V4L2_HEVC_SPS_FLAG_LONG_TERM_REF_PICS_PRESENT, "LONG_TERM_REF_PICS_PRESENT"},
> -		  {V4L2_HEVC_SPS_FLAG_SPS_TEMPORAL_MVP_ENABLED, "TEMPORAL_MVP_ENABLED"},
> -		  {V4L2_HEVC_SPS_FLAG_STRONG_INTRA_SMOOTHING_ENABLED, "STRONG_INTRA_SMOOTHING_ENABLED"}
> -	))
> -
> -);
> -
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_pps_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_pps *p),
> -	TP_ARGS(p),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_pps, p)),
> -	TP_fast_assign(__entry->p = *p),
> -	TP_printk("\npic_parameter_set_id %u\n"
> -		  "num_extra_slice_header_bits %u\n"
> -		  "num_ref_idx_l0_default_active_minus1 %u\n"
> -		  "num_ref_idx_l1_default_active_minus1 %u\n"
> -		  "init_qp_minus26 %d\n"
> -		  "diff_cu_qp_delta_depth %u\n"
> -		  "pps_cb_qp_offset %d\n"
> -		  "pps_cr_qp_offset %d\n"
> -		  "num_tile_columns_minus1 %d\n"
> -		  "num_tile_rows_minus1 %d\n"
> -		  "column_width_minus1 %s\n"
> -		  "row_height_minus1 %s\n"
> -		  "pps_beta_offset_div2 %d\n"
> -		  "pps_tc_offset_div2 %d\n"
> -		  "log2_parallel_merge_level_minus2 %u\n"
> -		  "flags %s",
> -		  __entry->p.pic_parameter_set_id,
> -		  __entry->p.num_extra_slice_header_bits,
> -		  __entry->p.num_ref_idx_l0_default_active_minus1,
> -		  __entry->p.num_ref_idx_l1_default_active_minus1,
> -		  __entry->p.init_qp_minus26,
> -		  __entry->p.diff_cu_qp_delta_depth,
> -		  __entry->p.pps_cb_qp_offset,
> -		  __entry->p.pps_cr_qp_offset,
> -		  __entry->p.num_tile_columns_minus1,
> -		  __entry->p.num_tile_rows_minus1,
> -		  __print_array(__entry->p.column_width_minus1,
> -				ARRAY_SIZE(__entry->p.column_width_minus1),
> -				sizeof(__entry->p.column_width_minus1[0])),
> -		  __print_array(__entry->p.row_height_minus1,
> -				ARRAY_SIZE(__entry->p.row_height_minus1),
> -				sizeof(__entry->p.row_height_minus1[0])),
> -		  __entry->p.pps_beta_offset_div2,
> -		  __entry->p.pps_tc_offset_div2,
> -		  __entry->p.log2_parallel_merge_level_minus2,
> -		  __print_flags(__entry->p.flags, "|",
> -		  {V4L2_HEVC_PPS_FLAG_DEPENDENT_SLICE_SEGMENT_ENABLED, "DEPENDENT_SLICE_SEGMENT_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_OUTPUT_FLAG_PRESENT, "OUTPUT_FLAG_PRESENT"},
> -		  {V4L2_HEVC_PPS_FLAG_SIGN_DATA_HIDING_ENABLED, "SIGN_DATA_HIDING_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_CABAC_INIT_PRESENT, "CABAC_INIT_PRESENT"},
> -		  {V4L2_HEVC_PPS_FLAG_CONSTRAINED_INTRA_PRED, "CONSTRAINED_INTRA_PRED"},
> -		  {V4L2_HEVC_PPS_FLAG_CU_QP_DELTA_ENABLED, "CU_QP_DELTA_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT, "PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT"},
> -		  {V4L2_HEVC_PPS_FLAG_WEIGHTED_PRED, "WEIGHTED_PRED"},
> -		  {V4L2_HEVC_PPS_FLAG_WEIGHTED_BIPRED, "WEIGHTED_BIPRED"},
> -		  {V4L2_HEVC_PPS_FLAG_TRANSQUANT_BYPASS_ENABLED, "TRANSQUANT_BYPASS_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_TILES_ENABLED, "TILES_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_ENTROPY_CODING_SYNC_ENABLED, "ENTROPY_CODING_SYNC_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_LOOP_FILTER_ACROSS_TILES_ENABLED, "LOOP_FILTER_ACROSS_TILES_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_PPS_LOOP_FILTER_ACROSS_SLICES_ENABLED, "PPS_LOOP_FILTER_ACROSS_SLICES_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_DEBLOCKING_FILTER_OVERRIDE_ENABLED, "DEBLOCKING_FILTER_OVERRIDE_ENABLED"},
> -		  {V4L2_HEVC_PPS_FLAG_PPS_DISABLE_DEBLOCKING_FILTER, "DISABLE_DEBLOCKING_FILTER"},
> -		  {V4L2_HEVC_PPS_FLAG_LISTS_MODIFICATION_PRESENT, "LISTS_MODIFICATION_PRESENT"},
> -		  {V4L2_HEVC_PPS_FLAG_SLICE_SEGMENT_HEADER_EXTENSION_PRESENT, "SLICE_SEGMENT_HEADER_EXTENSION_PRESENT"},
> -		  {V4L2_HEVC_PPS_FLAG_DEBLOCKING_FILTER_CONTROL_PRESENT, "DEBLOCKING_FILTER_CONTROL_PRESENT"},
> -		  {V4L2_HEVC_PPS_FLAG_UNIFORM_SPACING, "UNIFORM_SPACING"}
> -	))
> -
> -);
> -
> -
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_slice_params_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_slice_params *s),
> -	TP_ARGS(s),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_slice_params, s)),
> -	TP_fast_assign(__entry->s = *s),
> -	TP_printk("\nbit_size %u\n"
> -		  "data_byte_offset %u\n"
> -		  "num_entry_point_offsets %u\n"
> -		  "nal_unit_type %u\n"
> -		  "nuh_temporal_id_plus1 %u\n"
> -		  "slice_type %u\n"
> -		  "colour_plane_id %u\n"
> -		  "slice_pic_order_cnt %d\n"
> -		  "num_ref_idx_l0_active_minus1 %u\n"
> -		  "num_ref_idx_l1_active_minus1 %u\n"
> -		  "collocated_ref_idx %u\n"
> -		  "five_minus_max_num_merge_cand %u\n"
> -		  "slice_qp_delta %d\n"
> -		  "slice_cb_qp_offset %d\n"
> -		  "slice_cr_qp_offset %d\n"
> -		  "slice_act_y_qp_offset %d\n"
> -		  "slice_act_cb_qp_offset %d\n"
> -		  "slice_act_cr_qp_offset %d\n"
> -		  "slice_beta_offset_div2 %d\n"
> -		  "slice_tc_offset_div2 %d\n"
> -		  "pic_struct %u\n"
> -		  "slice_segment_addr %u\n"
> -		  "ref_idx_l0 %s\n"
> -		  "ref_idx_l1 %s\n"
> -		  "short_term_ref_pic_set_size %u\n"
> -		  "long_term_ref_pic_set_size %u\n"
> -		  "flags %s",
> -		  __entry->s.bit_size,
> -		  __entry->s.data_byte_offset,
> -		  __entry->s.num_entry_point_offsets,
> -		  __entry->s.nal_unit_type,
> -		  __entry->s.nuh_temporal_id_plus1,
> -		  __entry->s.slice_type,
> -		  __entry->s.colour_plane_id,
> -		  __entry->s.slice_pic_order_cnt,
> -		  __entry->s.num_ref_idx_l0_active_minus1,
> -		  __entry->s.num_ref_idx_l1_active_minus1,
> -		  __entry->s.collocated_ref_idx,
> -		  __entry->s.five_minus_max_num_merge_cand,
> -		  __entry->s.slice_qp_delta,
> -		  __entry->s.slice_cb_qp_offset,
> -		  __entry->s.slice_cr_qp_offset,
> -		  __entry->s.slice_act_y_qp_offset,
> -		  __entry->s.slice_act_cb_qp_offset,
> -		  __entry->s.slice_act_cr_qp_offset,
> -		  __entry->s.slice_beta_offset_div2,
> -		  __entry->s.slice_tc_offset_div2,
> -		  __entry->s.pic_struct,
> -		  __entry->s.slice_segment_addr,
> -		  __print_array(__entry->s.ref_idx_l0,
> -				ARRAY_SIZE(__entry->s.ref_idx_l0),
> -				sizeof(__entry->s.ref_idx_l0[0])),
> -		  __print_array(__entry->s.ref_idx_l1,
> -				ARRAY_SIZE(__entry->s.ref_idx_l1),
> -				sizeof(__entry->s.ref_idx_l1[0])),
> -		  __entry->s.short_term_ref_pic_set_size,
> -		  __entry->s.long_term_ref_pic_set_size,
> -		  __print_flags(__entry->s.flags, "|",
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_SAO_LUMA, "SLICE_SAO_LUMA"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_SAO_CHROMA, "SLICE_SAO_CHROMA"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_TEMPORAL_MVP_ENABLED, "SLICE_TEMPORAL_MVP_ENABLED"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_MVD_L1_ZERO, "MVD_L1_ZERO"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_CABAC_INIT, "CABAC_INIT"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_COLLOCATED_FROM_L0, "COLLOCATED_FROM_L0"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_USE_INTEGER_MV, "USE_INTEGER_MV"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_DEBLOCKING_FILTER_DISABLED, "SLICE_DEBLOCKING_FILTER_DISABLED"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_LOOP_FILTER_ACROSS_SLICES_ENABLED, "SLICE_LOOP_FILTER_ACROSS_SLICES_ENABLED"},
> -		  {V4L2_HEVC_SLICE_PARAMS_FLAG_DEPENDENT_SLICE_SEGMENT, "DEPENDENT_SLICE_SEGMENT"}
> -
> -	))
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_hevc_pred_weight_table_tmpl,
> -	TP_PROTO(const struct v4l2_hevc_pred_weight_table *p),
> -	TP_ARGS(p),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_hevc_pred_weight_table, p)),
> -	TP_fast_assign(__entry->p = *p),
> -	TP_printk("\ndelta_luma_weight_l0 %s\n"
> -		  "luma_offset_l0 %s\n"
> -		  "delta_chroma_weight_l0 {%s}\n"
> -		  "chroma_offset_l0 {%s}\n"
> -		  "delta_luma_weight_l1 %s\n"
> -		  "luma_offset_l1 %s\n"
> -		  "delta_chroma_weight_l1 {%s}\n"
> -		  "chroma_offset_l1 {%s}\n"
> -		  "luma_log2_weight_denom %d\n"
> -		  "delta_chroma_log2_weight_denom %d\n",
> -		  __print_array(__entry->p.delta_luma_weight_l0,
> -				ARRAY_SIZE(__entry->p.delta_luma_weight_l0),
> -				sizeof(__entry->p.delta_luma_weight_l0[0])),
> -		  __print_array(__entry->p.luma_offset_l0,
> -				ARRAY_SIZE(__entry->p.luma_offset_l0),
> -				sizeof(__entry->p.luma_offset_l0[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.delta_chroma_weight_l0,
> -				   sizeof(__entry->p.delta_chroma_weight_l0),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.chroma_offset_l0,
> -				   sizeof(__entry->p.chroma_offset_l0),
> -				   false),
> -		  __print_array(__entry->p.delta_luma_weight_l1,
> -				ARRAY_SIZE(__entry->p.delta_luma_weight_l1),
> -				sizeof(__entry->p.delta_luma_weight_l1[0])),
> -		  __print_array(__entry->p.luma_offset_l1,
> -				ARRAY_SIZE(__entry->p.luma_offset_l1),
> -				sizeof(__entry->p.luma_offset_l1[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.delta_chroma_weight_l1,
> -				   sizeof(__entry->p.delta_chroma_weight_l1),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.chroma_offset_l1,
> -				   sizeof(__entry->p.chroma_offset_l1),
> -				   false),
> -		__entry->p.luma_log2_weight_denom,
> -		__entry->p.delta_chroma_log2_weight_denom
> -
> -	))
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_scaling_matrix_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_scaling_matrix *s),
> -	TP_ARGS(s),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_scaling_matrix, s)),
> -	TP_fast_assign(__entry->s = *s),
> -	TP_printk("\nscaling_list_4x4 {%s}\n"
> -		  "scaling_list_8x8 {%s}\n"
> -		  "scaling_list_16x16 {%s}\n"
> -		  "scaling_list_32x32 {%s}\n"
> -		  "scaling_list_dc_coef_16x16 %s\n"
> -		  "scaling_list_dc_coef_32x32 %s\n",
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->s.scaling_list_4x4,
> -				   sizeof(__entry->s.scaling_list_4x4),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->s.scaling_list_8x8,
> -				   sizeof(__entry->s.scaling_list_8x8),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->s.scaling_list_16x16,
> -				   sizeof(__entry->s.scaling_list_16x16),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->s.scaling_list_32x32,
> -				   sizeof(__entry->s.scaling_list_32x32),
> -				   false),
> -		  __print_array(__entry->s.scaling_list_dc_coef_16x16,
> -				ARRAY_SIZE(__entry->s.scaling_list_dc_coef_16x16),
> -				sizeof(__entry->s.scaling_list_dc_coef_16x16[0])),
> -		  __print_array(__entry->s.scaling_list_dc_coef_32x32,
> -				ARRAY_SIZE(__entry->s.scaling_list_dc_coef_32x32),
> -				sizeof(__entry->s.scaling_list_dc_coef_32x32[0]))
> -	))
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_decode_params_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_decode_params *d),
> -	TP_ARGS(d),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_decode_params, d)),
> -	TP_fast_assign(__entry->d = *d),
> -	TP_printk("\npic_order_cnt_val %d\n"
> -		  "short_term_ref_pic_set_size %u\n"
> -		  "long_term_ref_pic_set_size %u\n"
> -		  "num_active_dpb_entries %u\n"
> -		  "num_poc_st_curr_before %u\n"
> -		  "num_poc_st_curr_after %u\n"
> -		  "num_poc_lt_curr %u\n"
> -		  "poc_st_curr_before %s\n"
> -		  "poc_st_curr_after %s\n"
> -		  "poc_lt_curr %s\n"
> -		  "flags %s",
> -		  __entry->d.pic_order_cnt_val,
> -		  __entry->d.short_term_ref_pic_set_size,
> -		  __entry->d.long_term_ref_pic_set_size,
> -		  __entry->d.num_active_dpb_entries,
> -		  __entry->d.num_poc_st_curr_before,
> -		  __entry->d.num_poc_st_curr_after,
> -		  __entry->d.num_poc_lt_curr,
> -		  __print_array(__entry->d.poc_st_curr_before,
> -				ARRAY_SIZE(__entry->d.poc_st_curr_before),
> -				sizeof(__entry->d.poc_st_curr_before[0])),
> -		  __print_array(__entry->d.poc_st_curr_after,
> -				ARRAY_SIZE(__entry->d.poc_st_curr_after),
> -				sizeof(__entry->d.poc_st_curr_after[0])),
> -		  __print_array(__entry->d.poc_lt_curr,
> -				ARRAY_SIZE(__entry->d.poc_lt_curr),
> -				sizeof(__entry->d.poc_lt_curr[0])),
> -		  __print_flags(__entry->d.flags, "|",
> -		  {V4L2_HEVC_DECODE_PARAM_FLAG_IRAP_PIC, "IRAP_PIC"},
> -		  {V4L2_HEVC_DECODE_PARAM_FLAG_IDR_PIC, "IDR_PIC"},
> -		  {V4L2_HEVC_DECODE_PARAM_FLAG_NO_OUTPUT_OF_PRIOR, "NO_OUTPUT_OF_PRIOR"}
> -	))
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_ext_sps_lt_rps_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_ext_sps_lt_rps *lt),
> -	TP_ARGS(lt),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_ext_sps_lt_rps, lt)),
> -	TP_fast_assign(__entry->lt = *lt),
> -	TP_printk("\nflags %s\n"
> -		  "lt_ref_pic_poc_lsb_sps %x\n",
> -		  __print_flags(__entry->lt.flags, "|",
> -		  {V4L2_HEVC_EXT_SPS_LT_RPS_FLAG_USED_LT, "USED_LT"}
> -		  ),
> -		  __entry->lt.lt_ref_pic_poc_lsb_sps
> -	)
> -)
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_ext_sps_st_rps_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_ext_sps_st_rps *st),
> -	TP_ARGS(st),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_ext_sps_st_rps, st)),
> -	TP_fast_assign(__entry->st = *st),
> -	TP_printk("\nflags %s\n"
> -		  "delta_idx_minus1: %u\n"
> -		  "delta_rps_sign: %u\n"
> -		  "abs_delta_rps_minus1: %u\n"
> -		  "num_negative_pics: %u\n"
> -		  "num_positive_pics: %u\n"
> -		  "used_by_curr_pic: %08x\n"
> -		  "use_delta_flag: %08x\n"
> -		  "delta_poc_s0_minus1: %s\n"
> -		  "delta_poc_s1_minus1: %s\n",
> -		  __print_flags(__entry->st.flags, "|",
> -		  {V4L2_HEVC_EXT_SPS_ST_RPS_FLAG_INTER_REF_PIC_SET_PRED, "INTER_REF_PIC_SET_PRED"}
> -		  ),
> -		  __entry->st.delta_idx_minus1,
> -		  __entry->st.delta_rps_sign,
> -		  __entry->st.abs_delta_rps_minus1,
> -		  __entry->st.num_negative_pics,
> -		  __entry->st.num_positive_pics,
> -		  __entry->st.used_by_curr_pic,
> -		  __entry->st.use_delta_flag,
> -		  __print_array(__entry->st.delta_poc_s0_minus1,
> -				ARRAY_SIZE(__entry->st.delta_poc_s0_minus1),
> -				sizeof(__entry->st.delta_poc_s0_minus1[0])),
> -		  __print_array(__entry->st.delta_poc_s1_minus1,
> -				ARRAY_SIZE(__entry->st.delta_poc_s1_minus1),
> -				sizeof(__entry->st.delta_poc_s1_minus1[0]))
> -	)
> -)
> -
> -
> -DECLARE_EVENT_CLASS(v4l2_hevc_dpb_entry_tmpl,
> -	TP_PROTO(const struct v4l2_hevc_dpb_entry *e),
> -	TP_ARGS(e),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_hevc_dpb_entry, e)),
> -	TP_fast_assign(__entry->e = *e),
> -	TP_printk("\ntimestamp %llu\n"
> -		  "flags %s\n"
> -		  "field_pic %u\n"
> -		  "pic_order_cnt_val %d\n",
> -		__entry->e.timestamp,
> -		__print_flags(__entry->e.flags, "|",
> -		{V4L2_HEVC_DPB_ENTRY_LONG_TERM_REFERENCE, "LONG_TERM_REFERENCE"}
> -		  ),
> -		__entry->e.field_pic,
> -		__entry->e.pic_order_cnt_val
> -	))
> -
> -DEFINE_EVENT(v4l2_ctrl_hevc_sps_tmpl, v4l2_ctrl_hevc_sps,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_sps *s),
> -	TP_ARGS(s)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_hevc_pps_tmpl, v4l2_ctrl_hevc_pps,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_pps *p),
> -	TP_ARGS(p)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_hevc_slice_params_tmpl, v4l2_ctrl_hevc_slice_params,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_slice_params *s),
> -	TP_ARGS(s)
> -);
> -
> -DEFINE_EVENT(v4l2_hevc_pred_weight_table_tmpl, v4l2_hevc_pred_weight_table,
> -	TP_PROTO(const struct v4l2_hevc_pred_weight_table *p),
> -	TP_ARGS(p)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_hevc_scaling_matrix_tmpl, v4l2_ctrl_hevc_scaling_matrix,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_scaling_matrix *s),
> -	TP_ARGS(s)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_hevc_decode_params_tmpl, v4l2_ctrl_hevc_decode_params,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_decode_params *d),
> -	TP_ARGS(d)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_hevc_ext_sps_lt_rps_tmpl, v4l2_ctrl_hevc_ext_sps_lt_rps,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_ext_sps_lt_rps *lt),
> -	TP_ARGS(lt)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_hevc_ext_sps_st_rps_tmpl, v4l2_ctrl_hevc_ext_sps_st_rps,
> -	TP_PROTO(const struct v4l2_ctrl_hevc_ext_sps_st_rps *st),
> -	TP_ARGS(st)
> -);
> -
> -DEFINE_EVENT(v4l2_hevc_dpb_entry_tmpl, v4l2_hevc_dpb_entry,
> -	TP_PROTO(const struct v4l2_hevc_dpb_entry *e),
> -	TP_ARGS(e)
> -);
> -
> -#endif
> -
> -#undef TRACE_INCLUDE_PATH
> -#undef TRACE_INCLUDE_FILE
> -#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl
> -#define TRACE_INCLUDE_FILE visl-trace-hevc
> -#include <trace/define_trace.h>
> diff --git a/drivers/media/test-drivers/visl/visl-trace-mpeg2.h b/drivers/media/test-drivers/visl/visl-trace-mpeg2.h
> deleted file mode 100644
> index ba6c65481194..000000000000
> --- a/drivers/media/test-drivers/visl/visl-trace-mpeg2.h
> +++ /dev/null
> @@ -1,99 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -#if !defined(_VISL_TRACE_MPEG2_H_) || defined(TRACE_HEADER_MULTI_READ)
> -#define _VISL_TRACE_MPEG2_H_
> -
> -#include <linux/tracepoint.h>
> -#include "visl.h"
> -
> -#undef TRACE_SYSTEM
> -#define TRACE_SYSTEM visl_mpeg2_controls
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_mpeg2_seq_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_mpeg2_sequence *s),
> -	TP_ARGS(s),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_mpeg2_sequence, s)),
> -	TP_fast_assign(__entry->s = *s;),
> -	TP_printk("\nhorizontal_size %u\nvertical_size %u\nvbv_buffer_size %u\n"
> -		  "profile_and_level_indication %u\nchroma_format %u\nflags %s\n",
> -		  __entry->s.horizontal_size,
> -		  __entry->s.vertical_size,
> -		  __entry->s.vbv_buffer_size,
> -		  __entry->s.profile_and_level_indication,
> -		  __entry->s.chroma_format,
> -		  __print_flags(__entry->s.flags, "|",
> -		  {V4L2_MPEG2_SEQ_FLAG_PROGRESSIVE, "PROGRESSIVE"})
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_mpeg2_pic_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_mpeg2_picture *p),
> -	TP_ARGS(p),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_mpeg2_picture, p)),
> -	TP_fast_assign(__entry->p = *p;),
> -	TP_printk("\nbackward_ref_ts %llu\nforward_ref_ts %llu\nflags %s\nf_code {%s}\n"
> -		  "picture_coding_type: %u\npicture_structure %u\nintra_dc_precision %u\n",
> -		  __entry->p.backward_ref_ts,
> -		  __entry->p.forward_ref_ts,
> -		  __print_flags(__entry->p.flags, "|",
> -		  {V4L2_MPEG2_PIC_FLAG_TOP_FIELD_FIRST, "TOP_FIELD_FIRST"},
> -		  {V4L2_MPEG2_PIC_FLAG_FRAME_PRED_DCT, "FRAME_PRED_DCT"},
> -		  {V4L2_MPEG2_PIC_FLAG_CONCEALMENT_MV, "CONCEALMENT_MV"},
> -		  {V4L2_MPEG2_PIC_FLAG_Q_SCALE_TYPE, "Q_SCALE_TYPE"},
> -		  {V4L2_MPEG2_PIC_FLAG_INTRA_VLC, "INTA_VLC"},
> -		  {V4L2_MPEG2_PIC_FLAG_ALT_SCAN, "ALT_SCAN"},
> -		  {V4L2_MPEG2_PIC_FLAG_REPEAT_FIRST, "REPEAT_FIRST"},
> -		  {V4L2_MPEG2_PIC_FLAG_PROGRESSIVE, "PROGRESSIVE"}),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.f_code,
> -				   sizeof(__entry->p.f_code),
> -				   false),
> -		  __entry->p.picture_coding_type,
> -		  __entry->p.picture_structure,
> -		  __entry->p.intra_dc_precision
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_mpeg2_quant_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_mpeg2_quantisation *q),
> -	TP_ARGS(q),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_mpeg2_quantisation, q)),
> -	TP_fast_assign(__entry->q = *q;),
> -	TP_printk("\nintra_quantiser_matrix %s\nnon_intra_quantiser_matrix %s\n"
> -		  "chroma_intra_quantiser_matrix %s\nchroma_non_intra_quantiser_matrix %s\n",
> -		  __print_array(__entry->q.intra_quantiser_matrix,
> -				ARRAY_SIZE(__entry->q.intra_quantiser_matrix),
> -				sizeof(__entry->q.intra_quantiser_matrix[0])),
> -		  __print_array(__entry->q.non_intra_quantiser_matrix,
> -				ARRAY_SIZE(__entry->q.non_intra_quantiser_matrix),
> -				sizeof(__entry->q.non_intra_quantiser_matrix[0])),
> -		  __print_array(__entry->q.chroma_intra_quantiser_matrix,
> -				ARRAY_SIZE(__entry->q.chroma_intra_quantiser_matrix),
> -				sizeof(__entry->q.chroma_intra_quantiser_matrix[0])),
> -		  __print_array(__entry->q.chroma_non_intra_quantiser_matrix,
> -				ARRAY_SIZE(__entry->q.chroma_non_intra_quantiser_matrix),
> -				sizeof(__entry->q.chroma_non_intra_quantiser_matrix[0]))
> -		  )
> -)
> -
> -DEFINE_EVENT(v4l2_ctrl_mpeg2_seq_tmpl, v4l2_ctrl_mpeg2_sequence,
> -	TP_PROTO(const struct v4l2_ctrl_mpeg2_sequence *s),
> -	TP_ARGS(s)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_mpeg2_pic_tmpl, v4l2_ctrl_mpeg2_picture,
> -	TP_PROTO(const struct v4l2_ctrl_mpeg2_picture *p),
> -	TP_ARGS(p)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_mpeg2_quant_tmpl, v4l2_ctrl_mpeg2_quantisation,
> -	TP_PROTO(const struct v4l2_ctrl_mpeg2_quantisation *q),
> -	TP_ARGS(q)
> -);
> -
> -#endif
> -
> -#undef TRACE_INCLUDE_PATH
> -#undef TRACE_INCLUDE_FILE
> -#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl
> -#define TRACE_INCLUDE_FILE visl-trace-mpeg2
> -#include <trace/define_trace.h>
> diff --git a/drivers/media/test-drivers/visl/visl-trace-points.c b/drivers/media/test-drivers/visl/visl-trace-points.c
> deleted file mode 100644
> index 321ff732c682..000000000000
> --- a/drivers/media/test-drivers/visl/visl-trace-points.c
> +++ /dev/null
> @@ -1,11 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0
> -#include "visl.h"
> -
> -#define CREATE_TRACE_POINTS
> -#include "visl-trace-fwht.h"
> -#include "visl-trace-mpeg2.h"
> -#include "visl-trace-vp8.h"
> -#include "visl-trace-vp9.h"
> -#include "visl-trace-h264.h"
> -#include "visl-trace-hevc.h"
> -#include "visl-trace-av1.h"
> diff --git a/drivers/media/test-drivers/visl/visl-trace-vp8.h b/drivers/media/test-drivers/visl/visl-trace-vp8.h
> deleted file mode 100644
> index dabe17d69ddc..000000000000
> --- a/drivers/media/test-drivers/visl/visl-trace-vp8.h
> +++ /dev/null
> @@ -1,156 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -#if !defined(_VISL_TRACE_VP8_H_) || defined(TRACE_HEADER_MULTI_READ)
> -#define _VISL_TRACE_VP8_H_
> -
> -#include <linux/tracepoint.h>
> -#include "visl.h"
> -
> -#undef TRACE_SYSTEM
> -#define TRACE_SYSTEM visl_vp8_controls
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_vp8_entropy_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_vp8_frame *f),
> -	TP_ARGS(f),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp8_frame, f)),
> -	TP_fast_assign(__entry->f = *f;),
> -	TP_printk("\nentropy.coeff_probs {%s}\n"
> -		  "entropy.y_mode_probs %s\n"
> -		  "entropy.uv_mode_probs %s\n"
> -		  "entropy.mv_probs {%s}",
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->f.entropy.coeff_probs,
> -				   sizeof(__entry->f.entropy.coeff_probs),
> -				   false),
> -		  __print_array(__entry->f.entropy.y_mode_probs,
> -				ARRAY_SIZE(__entry->f.entropy.y_mode_probs),
> -				sizeof(__entry->f.entropy.y_mode_probs[0])),
> -		  __print_array(__entry->f.entropy.uv_mode_probs,
> -				ARRAY_SIZE(__entry->f.entropy.uv_mode_probs),
> -				sizeof(__entry->f.entropy.uv_mode_probs[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->f.entropy.mv_probs,
> -				   sizeof(__entry->f.entropy.mv_probs),
> -				   false)
> -		  )
> -)
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_vp8_frame_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_vp8_frame *f),
> -	TP_ARGS(f),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp8_frame, f)),
> -	TP_fast_assign(__entry->f = *f;),
> -	TP_printk("\nsegment.quant_update %s\n"
> -		  "segment.lf_update %s\n"
> -		  "segment.segment_probs %s\n"
> -		  "segment.flags %s\n"
> -		  "lf.ref_frm_delta %s\n"
> -		  "lf.mb_mode_delta %s\n"
> -		  "lf.sharpness_level %u\n"
> -		  "lf.level %u\n"
> -		  "lf.flags %s\n"
> -		  "quant.y_ac_qi %u\n"
> -		  "quant.y_dc_delta %d\n"
> -		  "quant.y2_dc_delta %d\n"
> -		  "quant.y2_ac_delta %d\n"
> -		  "quant.uv_dc_delta %d\n"
> -		  "quant.uv_ac_delta %d\n"
> -		  "coder_state.range %u\n"
> -		  "coder_state.value %u\n"
> -		  "coder_state.bit_count %u\n"
> -		  "width %u\n"
> -		  "height %u\n"
> -		  "horizontal_scale %u\n"
> -		  "vertical_scale %u\n"
> -		  "version %u\n"
> -		  "prob_skip_false %u\n"
> -		  "prob_intra %u\n"
> -		  "prob_last %u\n"
> -		  "prob_gf %u\n"
> -		  "num_dct_parts %u\n"
> -		  "first_part_size %u\n"
> -		  "first_part_header_bits %u\n"
> -		  "dct_part_sizes %s\n"
> -		  "last_frame_ts %llu\n"
> -		  "golden_frame_ts %llu\n"
> -		  "alt_frame_ts %llu\n"
> -		  "flags %s",
> -		  __print_array(__entry->f.segment.quant_update,
> -				ARRAY_SIZE(__entry->f.segment.quant_update),
> -				sizeof(__entry->f.segment.quant_update[0])),
> -		  __print_array(__entry->f.segment.lf_update,
> -				ARRAY_SIZE(__entry->f.segment.lf_update),
> -				sizeof(__entry->f.segment.lf_update[0])),
> -		  __print_array(__entry->f.segment.segment_probs,
> -				ARRAY_SIZE(__entry->f.segment.segment_probs),
> -				sizeof(__entry->f.segment.segment_probs[0])),
> -		  __print_flags(__entry->f.segment.flags, "|",
> -		  {V4L2_VP8_SEGMENT_FLAG_ENABLED, "SEGMENT_ENABLED"},
> -		  {V4L2_VP8_SEGMENT_FLAG_UPDATE_MAP, "SEGMENT_UPDATE_MAP"},
> -		  {V4L2_VP8_SEGMENT_FLAG_UPDATE_FEATURE_DATA, "SEGMENT_UPDATE_FEATURE_DATA"},
> -		  {V4L2_VP8_SEGMENT_FLAG_DELTA_VALUE_MODE, "SEGMENT_DELTA_VALUE_MODE"}),
> -		  __print_array(__entry->f.lf.ref_frm_delta,
> -				ARRAY_SIZE(__entry->f.lf.ref_frm_delta),
> -				sizeof(__entry->f.lf.ref_frm_delta[0])),
> -		  __print_array(__entry->f.lf.mb_mode_delta,
> -				ARRAY_SIZE(__entry->f.lf.mb_mode_delta),
> -				sizeof(__entry->f.lf.mb_mode_delta[0])),
> -		  __entry->f.lf.sharpness_level,
> -		  __entry->f.lf.level,
> -		  __print_flags(__entry->f.lf.flags, "|",
> -		  {V4L2_VP8_LF_ADJ_ENABLE, "LF_ADJ_ENABLED"},
> -		  {V4L2_VP8_LF_DELTA_UPDATE, "LF_DELTA_UPDATE"},
> -		  {V4L2_VP8_LF_FILTER_TYPE_SIMPLE, "LF_FILTER_TYPE_SIMPLE"}),
> -		  __entry->f.quant.y_ac_qi,
> -		  __entry->f.quant.y_dc_delta,
> -		  __entry->f.quant.y2_dc_delta,
> -		  __entry->f.quant.y2_ac_delta,
> -		  __entry->f.quant.uv_dc_delta,
> -		  __entry->f.quant.uv_ac_delta,
> -		  __entry->f.coder_state.range,
> -		  __entry->f.coder_state.value,
> -		  __entry->f.coder_state.bit_count,
> -		  __entry->f.width,
> -		  __entry->f.height,
> -		  __entry->f.horizontal_scale,
> -		  __entry->f.vertical_scale,
> -		  __entry->f.version,
> -		  __entry->f.prob_skip_false,
> -		  __entry->f.prob_intra,
> -		  __entry->f.prob_last,
> -		  __entry->f.prob_gf,
> -		  __entry->f.num_dct_parts,
> -		  __entry->f.first_part_size,
> -		  __entry->f.first_part_header_bits,
> -		  __print_array(__entry->f.dct_part_sizes,
> -				ARRAY_SIZE(__entry->f.dct_part_sizes),
> -				sizeof(__entry->f.dct_part_sizes[0])),
> -		  __entry->f.last_frame_ts,
> -		  __entry->f.golden_frame_ts,
> -		  __entry->f.alt_frame_ts,
> -		  __print_flags(__entry->f.flags, "|",
> -		  {V4L2_VP8_FRAME_FLAG_KEY_FRAME, "KEY_FRAME"},
> -		  {V4L2_VP8_FRAME_FLAG_EXPERIMENTAL, "EXPERIMENTAL"},
> -		  {V4L2_VP8_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"},
> -		  {V4L2_VP8_FRAME_FLAG_MB_NO_SKIP_COEFF, "MB_NO_SKIP_COEFF"},
> -		  {V4L2_VP8_FRAME_FLAG_SIGN_BIAS_GOLDEN, "SIGN_BIAS_GOLDEN"},
> -		  {V4L2_VP8_FRAME_FLAG_SIGN_BIAS_ALT, "SIGN_BIAS_ALT"})
> -		  )
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_vp8_frame_tmpl, v4l2_ctrl_vp8_frame,
> -	TP_PROTO(const struct v4l2_ctrl_vp8_frame *f),
> -	TP_ARGS(f)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_vp8_entropy_tmpl, v4l2_ctrl_vp8_entropy,
> -	TP_PROTO(const struct v4l2_ctrl_vp8_frame *f),
> -	TP_ARGS(f)
> -);
> -
> -#endif
> -
> -#undef TRACE_INCLUDE_PATH
> -#undef TRACE_INCLUDE_FILE
> -#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl
> -#define TRACE_INCLUDE_FILE visl-trace-vp8
> -#include <trace/define_trace.h>
> diff --git a/drivers/media/test-drivers/visl/visl-trace-vp9.h b/drivers/media/test-drivers/visl/visl-trace-vp9.h
> deleted file mode 100644
> index 362b92b07f93..000000000000
> --- a/drivers/media/test-drivers/visl/visl-trace-vp9.h
> +++ /dev/null
> @@ -1,292 +0,0 @@
> -/* SPDX-License-Identifier: GPL-2.0 */
> -#if !defined(_VISL_TRACE_VP9_H_) || defined(TRACE_HEADER_MULTI_READ)
> -#define _VISL_TRACE_VP9_H_
> -
> -#include <linux/tracepoint.h>
> -#include "visl.h"
> -
> -#undef TRACE_SYSTEM
> -#define TRACE_SYSTEM visl_vp9_controls
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_frame_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_vp9_frame *f),
> -	TP_ARGS(f),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_frame, f)),
> -	TP_fast_assign(__entry->f = *f;),
> -	TP_printk("\nlf.ref_deltas %s\n"
> -		  "lf.mode_deltas %s\n"
> -		  "lf.level %u\n"
> -		  "lf.sharpness %u\n"
> -		  "lf.flags %s\n"
> -		  "quant.base_q_idx %u\n"
> -		  "quant.delta_q_y_dc %d\n"
> -		  "quant.delta_q_uv_dc %d\n"
> -		  "quant.delta_q_uv_ac %d\n"
> -		  "seg.feature_data {%s}\n"
> -		  "seg.feature_enabled %s\n"
> -		  "seg.tree_probs %s\n"
> -		  "seg.pred_probs %s\n"
> -		  "seg.flags %s\n"
> -		  "flags %s\n"
> -		  "compressed_header_size %u\n"
> -		  "uncompressed_header_size %u\n"
> -		  "frame_width_minus_1 %u\n"
> -		  "frame_height_minus_1 %u\n"
> -		  "render_width_minus_1 %u\n"
> -		  "render_height_minus_1 %u\n"
> -		  "last_frame_ts %llu\n"
> -		  "golden_frame_ts %llu\n"
> -		  "alt_frame_ts %llu\n"
> -		  "ref_frame_sign_bias %s\n"
> -		  "reset_frame_context %s\n"
> -		  "frame_context_idx %u\n"
> -		  "profile %u\n"
> -		  "bit_depth %u\n"
> -		  "interpolation_filter %s\n"
> -		  "tile_cols_log2 %u\n"
> -		  "tile_rows_log_2 %u\n"
> -		  "reference_mode %s\n",
> -		  __print_array(__entry->f.lf.ref_deltas,
> -				ARRAY_SIZE(__entry->f.lf.ref_deltas),
> -				sizeof(__entry->f.lf.ref_deltas[0])),
> -		  __print_array(__entry->f.lf.mode_deltas,
> -				ARRAY_SIZE(__entry->f.lf.mode_deltas),
> -				sizeof(__entry->f.lf.mode_deltas[0])),
> -		  __entry->f.lf.level,
> -		  __entry->f.lf.sharpness,
> -		  __print_flags(__entry->f.lf.flags, "|",
> -		  {V4L2_VP9_LOOP_FILTER_FLAG_DELTA_ENABLED, "DELTA_ENABLED"},
> -		  {V4L2_VP9_LOOP_FILTER_FLAG_DELTA_UPDATE, "DELTA_UPDATE"}),
> -		  __entry->f.quant.base_q_idx,
> -		  __entry->f.quant.delta_q_y_dc,
> -		  __entry->f.quant.delta_q_uv_dc,
> -		  __entry->f.quant.delta_q_uv_ac,
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->f.seg.feature_data,
> -				   sizeof(__entry->f.seg.feature_data),
> -				   false),
> -		  __print_array(__entry->f.seg.feature_enabled,
> -				ARRAY_SIZE(__entry->f.seg.feature_enabled),
> -				sizeof(__entry->f.seg.feature_enabled[0])),
> -		  __print_array(__entry->f.seg.tree_probs,
> -				ARRAY_SIZE(__entry->f.seg.tree_probs),
> -				sizeof(__entry->f.seg.tree_probs[0])),
> -		  __print_array(__entry->f.seg.pred_probs,
> -				ARRAY_SIZE(__entry->f.seg.pred_probs),
> -				sizeof(__entry->f.seg.pred_probs[0])),
> -		  __print_flags(__entry->f.seg.flags, "|",
> -		  {V4L2_VP9_SEGMENTATION_FLAG_ENABLED, "ENABLED"},
> -		  {V4L2_VP9_SEGMENTATION_FLAG_UPDATE_MAP, "UPDATE_MAP"},
> -		  {V4L2_VP9_SEGMENTATION_FLAG_TEMPORAL_UPDATE, "TEMPORAL_UPDATE"},
> -		  {V4L2_VP9_SEGMENTATION_FLAG_UPDATE_DATA, "UPDATE_DATA"},
> -		  {V4L2_VP9_SEGMENTATION_FLAG_ABS_OR_DELTA_UPDATE, "ABS_OR_DELTA_UPDATE"}),
> -		  __print_flags(__entry->f.flags, "|",
> -		  {V4L2_VP9_FRAME_FLAG_KEY_FRAME, "KEY_FRAME"},
> -		  {V4L2_VP9_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"},
> -		  {V4L2_VP9_FRAME_FLAG_ERROR_RESILIENT, "ERROR_RESILIENT"},
> -		  {V4L2_VP9_FRAME_FLAG_INTRA_ONLY, "INTRA_ONLY"},
> -		  {V4L2_VP9_FRAME_FLAG_ALLOW_HIGH_PREC_MV, "ALLOW_HIGH_PREC_MV"},
> -		  {V4L2_VP9_FRAME_FLAG_REFRESH_FRAME_CTX, "REFRESH_FRAME_CTX"},
> -		  {V4L2_VP9_FRAME_FLAG_PARALLEL_DEC_MODE, "PARALLEL_DEC_MODE"},
> -		  {V4L2_VP9_FRAME_FLAG_X_SUBSAMPLING, "X_SUBSAMPLING"},
> -		  {V4L2_VP9_FRAME_FLAG_Y_SUBSAMPLING, "Y_SUBSAMPLING"},
> -		  {V4L2_VP9_FRAME_FLAG_COLOR_RANGE_FULL_SWING, "COLOR_RANGE_FULL_SWING"}),
> -		  __entry->f.compressed_header_size,
> -		  __entry->f.uncompressed_header_size,
> -		  __entry->f.frame_width_minus_1,
> -		  __entry->f.frame_height_minus_1,
> -		  __entry->f.render_width_minus_1,
> -		  __entry->f.render_height_minus_1,
> -		  __entry->f.last_frame_ts,
> -		  __entry->f.golden_frame_ts,
> -		  __entry->f.alt_frame_ts,
> -		  __print_symbolic(__entry->f.ref_frame_sign_bias,
> -		  {V4L2_VP9_SIGN_BIAS_LAST, "SIGN_BIAS_LAST"},
> -		  {V4L2_VP9_SIGN_BIAS_GOLDEN, "SIGN_BIAS_GOLDEN"},
> -		  {V4L2_VP9_SIGN_BIAS_ALT, "SIGN_BIAS_ALT"}),
> -		  __print_symbolic(__entry->f.reset_frame_context,
> -		  {V4L2_VP9_RESET_FRAME_CTX_NONE, "RESET_FRAME_CTX_NONE"},
> -		  {V4L2_VP9_RESET_FRAME_CTX_SPEC, "RESET_FRAME_CTX_SPEC"},
> -		  {V4L2_VP9_RESET_FRAME_CTX_ALL, "RESET_FRAME_CTX_ALL"}),
> -		  __entry->f.frame_context_idx,
> -		  __entry->f.profile,
> -		  __entry->f.bit_depth,
> -		  __print_symbolic(__entry->f.interpolation_filter,
> -		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP, "INTERP_FILTER_EIGHTTAP"},
> -		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP_SMOOTH, "INTERP_FILTER_EIGHTTAP_SMOOTH"},
> -		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP_SHARP, "INTERP_FILTER_EIGHTTAP_SHARP"},
> -		  {V4L2_VP9_INTERP_FILTER_BILINEAR, "INTERP_FILTER_BILINEAR"},
> -		  {V4L2_VP9_INTERP_FILTER_SWITCHABLE, "INTERP_FILTER_SWITCHABLE"}),
> -		  __entry->f.tile_cols_log2,
> -		  __entry->f.tile_rows_log2,
> -		  __print_symbolic(__entry->f.reference_mode,
> -		  {V4L2_VP9_REFERENCE_MODE_SINGLE_REFERENCE, "REFERENCE_MODE_SINGLE_REFERENCE"},
> -		  {V4L2_VP9_REFERENCE_MODE_COMPOUND_REFERENCE, "REFERENCE_MODE_COMPOUND_REFERENCE"},
> -		  {V4L2_VP9_REFERENCE_MODE_SELECT, "REFERENCE_MODE_SELECT"}))
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_compressed_hdr_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),
> -	TP_ARGS(h),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_compressed_hdr, h)),
> -	TP_fast_assign(__entry->h = *h;),
> -	TP_printk("\ntx_mode %s\n"
> -		  "tx8 {%s}\n"
> -		  "tx16 {%s}\n"
> -		  "tx32 {%s}\n"
> -		  "skip %s\n"
> -		  "inter_mode {%s}\n"
> -		  "interp_filter {%s}\n"
> -		  "is_inter %s\n"
> -		  "comp_mode %s\n"
> -		  "single_ref {%s}\n"
> -		  "comp_ref %s\n"
> -		  "y_mode {%s}\n"
> -		  "uv_mode {%s}\n"
> -		  "partition {%s}\n",
> -		  __print_symbolic(__entry->h.tx_mode,
> -		  {V4L2_VP9_TX_MODE_ONLY_4X4, "TX_MODE_ONLY_4X4"},
> -		  {V4L2_VP9_TX_MODE_ALLOW_8X8, "TX_MODE_ALLOW_8X8"},
> -		  {V4L2_VP9_TX_MODE_ALLOW_16X16, "TX_MODE_ALLOW_16X16"},
> -		  {V4L2_VP9_TX_MODE_ALLOW_32X32, "TX_MODE_ALLOW_32X32"},
> -		  {V4L2_VP9_TX_MODE_SELECT, "TX_MODE_SELECT"}),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.tx8,
> -				   sizeof(__entry->h.tx8),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.tx16,
> -				   sizeof(__entry->h.tx16),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.tx32,
> -				   sizeof(__entry->h.tx32),
> -				   false),
> -		  __print_array(__entry->h.skip,
> -				ARRAY_SIZE(__entry->h.skip),
> -				sizeof(__entry->h.skip[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.inter_mode,
> -				   sizeof(__entry->h.inter_mode),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.interp_filter,
> -				   sizeof(__entry->h.interp_filter),
> -				   false),
> -		  __print_array(__entry->h.is_inter,
> -				ARRAY_SIZE(__entry->h.is_inter),
> -				sizeof(__entry->h.is_inter[0])),
> -		  __print_array(__entry->h.comp_mode,
> -				ARRAY_SIZE(__entry->h.comp_mode),
> -				sizeof(__entry->h.comp_mode[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.single_ref,
> -				   sizeof(__entry->h.single_ref),
> -				   false),
> -		  __print_array(__entry->h.comp_ref,
> -				ARRAY_SIZE(__entry->h.comp_ref),
> -				sizeof(__entry->h.comp_ref[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.y_mode,
> -				   sizeof(__entry->h.y_mode),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.uv_mode,
> -				   sizeof(__entry->h.uv_mode),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.partition,
> -				   sizeof(__entry->h.partition),
> -				   false)
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_compressed_coef_tmpl,
> -	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),
> -	TP_ARGS(h),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_compressed_hdr, h)),
> -	TP_fast_assign(__entry->h = *h;),
> -	TP_printk("\n coef {%s}",
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->h.coef,
> -				   sizeof(__entry->h.coef),
> -				   false)
> -	)
> -);
> -
> -DECLARE_EVENT_CLASS(v4l2_vp9_mv_probs_tmpl,
> -	TP_PROTO(const struct v4l2_vp9_mv_probs *p),
> -	TP_ARGS(p),
> -	TP_STRUCT__entry(__field_struct(struct v4l2_vp9_mv_probs, p)),
> -	TP_fast_assign(__entry->p = *p;),
> -	TP_printk("\n joint %s\n"
> -		  "sign %s\n"
> -		  "classes {%s}\n"
> -		  "class0_bit %s\n"
> -		  "bits {%s}\n"
> -		  "class0_fr {%s}\n"
> -		  "fr {%s}\n"
> -		  "class0_hp %s\n"
> -		  "hp %s\n",
> -		  __print_array(__entry->p.joint,
> -				ARRAY_SIZE(__entry->p.joint),
> -				sizeof(__entry->p.joint[0])),
> -		  __print_array(__entry->p.sign,
> -				ARRAY_SIZE(__entry->p.sign),
> -				sizeof(__entry->p.sign[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.classes,
> -				   sizeof(__entry->p.classes),
> -				   false),
> -		  __print_array(__entry->p.class0_bit,
> -				ARRAY_SIZE(__entry->p.class0_bit),
> -				sizeof(__entry->p.class0_bit[0])),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.bits,
> -				   sizeof(__entry->p.bits),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.class0_fr,
> -				   sizeof(__entry->p.class0_fr),
> -				   false),
> -		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> -				   __entry->p.fr,
> -				   sizeof(__entry->p.fr),
> -				   false),
> -		  __print_array(__entry->p.class0_hp,
> -				ARRAY_SIZE(__entry->p.class0_hp),
> -				sizeof(__entry->p.class0_hp[0])),
> -		  __print_array(__entry->p.hp,
> -				ARRAY_SIZE(__entry->p.hp),
> -				sizeof(__entry->p.hp[0]))
> -	)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_vp9_frame_tmpl, v4l2_ctrl_vp9_frame,
> -	TP_PROTO(const struct v4l2_ctrl_vp9_frame *f),
> -	TP_ARGS(f)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_vp9_compressed_hdr_tmpl, v4l2_ctrl_vp9_compressed_hdr,
> -	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),
> -	TP_ARGS(h)
> -);
> -
> -DEFINE_EVENT(v4l2_ctrl_vp9_compressed_coef_tmpl, v4l2_ctrl_vp9_compressed_coeff,
> -	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),
> -	TP_ARGS(h)
> -);
> -
> -
> -DEFINE_EVENT(v4l2_vp9_mv_probs_tmpl, v4l2_vp9_mv_probs,
> -	TP_PROTO(const struct v4l2_vp9_mv_probs *p),
> -	TP_ARGS(p)
> -);
> -
> -#endif
> -
> -#undef TRACE_INCLUDE_PATH
> -#undef TRACE_INCLUDE_FILE
> -#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl
> -#define TRACE_INCLUDE_FILE visl-trace-vp9
> -#include <trace/define_trace.h>
> diff --git a/drivers/media/v4l2-core/v4l2-trace.c b/drivers/media/v4l2-core/v4l2-trace.c
> index 95f3b02e1f84..9ce54c1968ef 100644
> --- a/drivers/media/v4l2-core/v4l2-trace.c
> +++ b/drivers/media/v4l2-core/v4l2-trace.c
> @@ -5,8 +5,53 @@
>  
>  #define CREATE_TRACE_POINTS
>  #include <trace/events/v4l2.h>
> +#include <trace/events/v4l2_requests.h>
>  
>  EXPORT_TRACEPOINT_SYMBOL_GPL(vb2_v4l2_buf_done);
>  EXPORT_TRACEPOINT_SYMBOL_GPL(vb2_v4l2_buf_queue);
>  EXPORT_TRACEPOINT_SYMBOL_GPL(vb2_v4l2_dqbuf);
>  EXPORT_TRACEPOINT_SYMBOL_GPL(vb2_v4l2_qbuf);
> +
> +/* Export AV1 controls */
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_av1_sequence);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_av1_frame);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_av1_tile_group_entry);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_av1_film_grain);
> +
> +/* Export FWHT controls */
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_fwht_params);
> +
> +/* Export H264 controls */
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_h264_sps);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_h264_pps);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_h264_scaling_matrix);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_h264_pred_weights);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_h264_slice_params);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_h264_ref_pic_list0);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_h264_ref_pic_list1);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_h264_decode_params);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_h264_dpb_entry);
> +
> +/* Export HEVC controls */
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_hevc_sps);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_hevc_pps);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_hevc_slice_params);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_hevc_pred_weight_table);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_hevc_scaling_matrix);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_hevc_decode_params);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_hevc_dpb_entry);
> +
> +/* Export MPEG2 controls */
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_mpeg2_sequence);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_mpeg2_picture);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_mpeg2_quantisation);
> +
> +/* Export VP8 controls */
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_vp8_frame);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_vp8_entropy);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_vp9_frame);
> +
> +/* Export VP9 controls */
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_vp9_compressed_hdr);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_ctrl_vp9_compressed_coeff);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(v4l2_vp9_mv_probs);
> diff --git a/include/trace/events/v4l2_requests.h b/include/trace/events/v4l2_requests.h
> new file mode 100644
> index 000000000000..1e137d39d5fe
> --- /dev/null
> +++ b/include/trace/events/v4l2_requests.h
> @@ -0,0 +1,1645 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +#if !defined(_TRACE_V4L2_REQUESTS_H_) || defined(TRACE_HEADER_MULTI_READ)
> +#define _TRACE_V4L2_REQUESTS_H_
> +
> +#include <linux/tracepoint.h>
> +#include <linux/v4l2-controls.h>
> +
> +#undef TRACE_SYSTEM
> +#define TRACE_SYSTEM v4l2_requests
> +
> +/* AV1 controls */
> +DECLARE_EVENT_CLASS(v4l2_ctrl_av1_seq_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_av1_sequence *s),
> +	TP_ARGS(s),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_sequence, s)),
> +	TP_fast_assign(__entry->s = *s;),
> +	TP_printk("\nflags %s\nseq_profile: %u\norder_hint_bits: %u\nbit_depth: %u\n"
> +		  "max_frame_width_minus_1: %u\nmax_frame_height_minus_1: %u\n",
> +		  __print_flags(__entry->s.flags, "|",
> +		  {V4L2_AV1_SEQUENCE_FLAG_STILL_PICTURE, "STILL_PICTURE"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_USE_128X128_SUPERBLOCK, "USE_128X128_SUPERBLOCK"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_FILTER_INTRA, "ENABLE_FILTER_INTRA"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_INTRA_EDGE_FILTER, "ENABLE_INTRA_EDGE_FILTER"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_INTERINTRA_COMPOUND, "ENABLE_INTERINTRA_COMPOUND"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_MASKED_COMPOUND, "ENABLE_MASKED_COMPOUND"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_WARPED_MOTION, "ENABLE_WARPED_MOTION"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_DUAL_FILTER, "ENABLE_DUAL_FILTER"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_ORDER_HINT, "ENABLE_ORDER_HINT"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_JNT_COMP, "ENABLE_JNT_COMP"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_REF_FRAME_MVS, "ENABLE_REF_FRAME_MVS"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_SUPERRES, "ENABLE_SUPERRES"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_CDEF, "ENABLE_CDEF"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_ENABLE_RESTORATION, "ENABLE_RESTORATION"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_MONO_CHROME, "MONO_CHROME"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_COLOR_RANGE, "COLOR_RANGE"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_SUBSAMPLING_X, "SUBSAMPLING_X"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_SUBSAMPLING_Y, "SUBSAMPLING_Y"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_FILM_GRAIN_PARAMS_PRESENT, "FILM_GRAIN_PARAMS_PRESENT"},
> +		  {V4L2_AV1_SEQUENCE_FLAG_SEPARATE_UV_DELTA_Q, "SEPARATE_UV_DELTA_Q"}),
> +		  __entry->s.seq_profile,
> +		  __entry->s.order_hint_bits,
> +		  __entry->s.bit_depth,
> +		  __entry->s.max_frame_width_minus_1,
> +		  __entry->s.max_frame_height_minus_1
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_av1_tge_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_av1_tile_group_entry *t),
> +	TP_ARGS(t),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_tile_group_entry, t)),
> +	TP_fast_assign(__entry->t = *t;),
> +	TP_printk("\ntile_offset: %u\n tile_size: %u\n tile_row: %u\ntile_col: %u\n",
> +		  __entry->t.tile_offset,
> +		  __entry->t.tile_size,
> +		  __entry->t.tile_row,
> +		  __entry->t.tile_col
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_av1_frame_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_av1_frame *f),
> +	TP_ARGS(f),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_frame, f)),
> +	TP_fast_assign(__entry->f = *f;),
> +	TP_printk("\ntile_info.flags: %s\ntile_info.context_update_tile_id: %u\n"
> +		  "tile_info.tile_cols: %u\ntile_info.tile_rows: %u\n"
> +		  "tile_info.mi_col_starts: %s\ntile_info.mi_row_starts: %s\n"
> +		  "tile_info.width_in_sbs_minus_1: %s\ntile_info.height_in_sbs_minus_1: %s\n"
> +		  "tile_info.tile_size_bytes: %u\nquantization.flags: %s\n"
> +		  "quantization.base_q_idx: %u\nquantization.delta_q_y_dc: %d\n"
> +		  "quantization.delta_q_u_dc: %d\nquantization.delta_q_u_ac: %d\n"
> +		  "quantization.delta_q_v_dc: %d\nquantization.delta_q_v_ac: %d\n"
> +		  "quantization.qm_y: %u\nquantization.qm_u: %u\nquantization.qm_v: %u\n"
> +		  "quantization.delta_q_res: %u\nsuperres_denom: %u\nsegmentation.flags: %s\n"
> +		  "segmentation.last_active_seg_id: %u\nsegmentation.feature_enabled:%s\n"
> +		  "loop_filter.flags: %s\nloop_filter.level: %s\nloop_filter.sharpness: %u\n"
> +		  "loop_filter.ref_deltas: %s\nloop_filter.mode_deltas: %s\n"
> +		  "loop_filter.delta_lf_res: %u\ncdef.damping_minus_3: %u\ncdef.bits: %u\n"
> +		  "cdef.y_pri_strength: %s\ncdef.y_sec_strength: %s\n"
> +		  "cdef.uv_pri_strength: %s\ncdef.uv_sec_strength:%s\nskip_mode_frame: %s\n"
> +		  "primary_ref_frame: %u\nloop_restoration.flags: %s\n"
> +		  "loop_restoration.lr_unit_shift: %u\nloop_restoration.lr_uv_shift: %u\n"
> +		  "loop_restoration.frame_restoration_type: %s\n"
> +		  "loop_restoration.loop_restoration_size: %s\nflags: %s\norder_hint: %u\n"
> +		  "upscaled_width: %u\nframe_width_minus_1: %u\nframe_height_minus_1: %u\n"
> +		  "render_width_minus_1: %u\nrender_height_minus_1: %u\ncurrent_frame_id: %u\n"
> +		  "buffer_removal_time: %s\norder_hints: %s\nreference_frame_ts: %s\n"
> +		  "ref_frame_idx: %s\nrefresh_frame_flags: %u\n",
> +		  __print_flags(__entry->f.tile_info.flags, "|",
> +		  {V4L2_AV1_TILE_INFO_FLAG_UNIFORM_TILE_SPACING, "UNIFORM_TILE_SPACING"}),
> +		  __entry->f.tile_info.context_update_tile_id,
> +		  __entry->f.tile_info.tile_cols,
> +		  __entry->f.tile_info.tile_rows,
> +		  __print_array(__entry->f.tile_info.mi_col_starts,
> +				ARRAY_SIZE(__entry->f.tile_info.mi_col_starts),
> +				sizeof(__entry->f.tile_info.mi_col_starts[0])),
> +		  __print_array(__entry->f.tile_info.mi_row_starts,
> +				ARRAY_SIZE(__entry->f.tile_info.mi_row_starts),
> +				sizeof(__entry->f.tile_info.mi_row_starts[0])),
> +		  __print_array(__entry->f.tile_info.width_in_sbs_minus_1,
> +				ARRAY_SIZE(__entry->f.tile_info.width_in_sbs_minus_1),
> +				sizeof(__entry->f.tile_info.width_in_sbs_minus_1[0])),
> +		  __print_array(__entry->f.tile_info.height_in_sbs_minus_1,
> +				ARRAY_SIZE(__entry->f.tile_info.height_in_sbs_minus_1),
> +				sizeof(__entry->f.tile_info.height_in_sbs_minus_1[0])),
> +		  __entry->f.tile_info.tile_size_bytes,
> +		  __print_flags(__entry->f.quantization.flags, "|",
> +		  {V4L2_AV1_QUANTIZATION_FLAG_DIFF_UV_DELTA, "DIFF_UV_DELTA"},
> +		  {V4L2_AV1_QUANTIZATION_FLAG_USING_QMATRIX, "USING_QMATRIX"},
> +		  {V4L2_AV1_QUANTIZATION_FLAG_DELTA_Q_PRESENT, "DELTA_Q_PRESENT"}),
> +		  __entry->f.quantization.base_q_idx,
> +		  __entry->f.quantization.delta_q_y_dc,
> +		  __entry->f.quantization.delta_q_u_dc,
> +		  __entry->f.quantization.delta_q_u_ac,
> +		  __entry->f.quantization.delta_q_v_dc,
> +		  __entry->f.quantization.delta_q_v_ac,
> +		  __entry->f.quantization.qm_y,
> +		  __entry->f.quantization.qm_u,
> +		  __entry->f.quantization.qm_v,
> +		  __entry->f.quantization.delta_q_res,
> +		  __entry->f.superres_denom,
> +		  __print_flags(__entry->f.segmentation.flags, "|",
> +		  {V4L2_AV1_SEGMENTATION_FLAG_ENABLED, "ENABLED"},
> +		  {V4L2_AV1_SEGMENTATION_FLAG_UPDATE_MAP, "UPDATE_MAP"},
> +		  {V4L2_AV1_SEGMENTATION_FLAG_TEMPORAL_UPDATE, "TEMPORAL_UPDATE"},
> +		  {V4L2_AV1_SEGMENTATION_FLAG_UPDATE_DATA, "UPDATE_DATA"},
> +		  {V4L2_AV1_SEGMENTATION_FLAG_SEG_ID_PRE_SKIP, "SEG_ID_PRE_SKIP"}),
> +		  __entry->f.segmentation.last_active_seg_id,
> +		  __print_array(__entry->f.segmentation.feature_enabled,
> +				ARRAY_SIZE(__entry->f.segmentation.feature_enabled),
> +				sizeof(__entry->f.segmentation.feature_enabled[0])),
> +		  __print_flags(__entry->f.loop_filter.flags, "|",
> +		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_ENABLED, "DELTA_ENABLED"},
> +		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_UPDATE, "DELTA_UPDATE"},
> +		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_LF_PRESENT, "DELTA_LF_PRESENT"},
> +		  {V4L2_AV1_LOOP_FILTER_FLAG_DELTA_LF_MULTI, "DELTA_LF_MULTI"}),
> +		  __print_array(__entry->f.loop_filter.level,
> +				ARRAY_SIZE(__entry->f.loop_filter.level),
> +				sizeof(__entry->f.loop_filter.level[0])),
> +		  __entry->f.loop_filter.sharpness,
> +		  __print_array(__entry->f.loop_filter.ref_deltas,
> +				ARRAY_SIZE(__entry->f.loop_filter.ref_deltas),
> +				sizeof(__entry->f.loop_filter.ref_deltas[0])),
> +		  __print_array(__entry->f.loop_filter.mode_deltas,
> +				ARRAY_SIZE(__entry->f.loop_filter.mode_deltas),
> +				sizeof(__entry->f.loop_filter.mode_deltas[0])),
> +		  __entry->f.loop_filter.delta_lf_res,
> +		  __entry->f.cdef.damping_minus_3,
> +		  __entry->f.cdef.bits,
> +		  __print_array(__entry->f.cdef.y_pri_strength,
> +				ARRAY_SIZE(__entry->f.cdef.y_pri_strength),
> +				sizeof(__entry->f.cdef.y_pri_strength[0])),
> +		  __print_array(__entry->f.cdef.y_sec_strength,
> +				ARRAY_SIZE(__entry->f.cdef.y_sec_strength),
> +				sizeof(__entry->f.cdef.y_sec_strength[0])),
> +		  __print_array(__entry->f.cdef.uv_pri_strength,
> +				ARRAY_SIZE(__entry->f.cdef.uv_pri_strength),
> +				sizeof(__entry->f.cdef.uv_pri_strength[0])),
> +		  __print_array(__entry->f.cdef.uv_sec_strength,
> +				ARRAY_SIZE(__entry->f.cdef.uv_sec_strength),
> +				sizeof(__entry->f.cdef.uv_sec_strength[0])),
> +		  __print_array(__entry->f.skip_mode_frame,
> +				ARRAY_SIZE(__entry->f.skip_mode_frame),
> +				sizeof(__entry->f.skip_mode_frame[0])),
> +		  __entry->f.primary_ref_frame,
> +		  __print_flags(__entry->f.loop_restoration.flags, "|",
> +		  {V4L2_AV1_LOOP_RESTORATION_FLAG_USES_LR, "USES_LR"},
> +		  {V4L2_AV1_LOOP_RESTORATION_FLAG_USES_CHROMA_LR, "USES_CHROMA_LR"}),
> +		  __entry->f.loop_restoration.lr_unit_shift,
> +		  __entry->f.loop_restoration.lr_uv_shift,
> +		  __print_array(__entry->f.loop_restoration.frame_restoration_type,
> +				ARRAY_SIZE(__entry->f.loop_restoration.frame_restoration_type),
> +				sizeof(__entry->f.loop_restoration.frame_restoration_type[0])),
> +		  __print_array(__entry->f.loop_restoration.loop_restoration_size,
> +				ARRAY_SIZE(__entry->f.loop_restoration.loop_restoration_size),
> +				sizeof(__entry->f.loop_restoration.loop_restoration_size[0])),
> +		  __print_flags(__entry->f.flags, "|",
> +		  {V4L2_AV1_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"},
> +		  {V4L2_AV1_FRAME_FLAG_SHOWABLE_FRAME, "SHOWABLE_FRAME"},
> +		  {V4L2_AV1_FRAME_FLAG_ERROR_RESILIENT_MODE, "ERROR_RESILIENT_MODE"},
> +		  {V4L2_AV1_FRAME_FLAG_DISABLE_CDF_UPDATE, "DISABLE_CDF_UPDATE"},
> +		  {V4L2_AV1_FRAME_FLAG_ALLOW_SCREEN_CONTENT_TOOLS, "ALLOW_SCREEN_CONTENT_TOOLS"},
> +		  {V4L2_AV1_FRAME_FLAG_FORCE_INTEGER_MV, "FORCE_INTEGER_MV"},
> +		  {V4L2_AV1_FRAME_FLAG_ALLOW_INTRABC, "ALLOW_INTRABC"},
> +		  {V4L2_AV1_FRAME_FLAG_USE_SUPERRES, "USE_SUPERRES"},
> +		  {V4L2_AV1_FRAME_FLAG_ALLOW_HIGH_PRECISION_MV, "ALLOW_HIGH_PRECISION_MV"},
> +		  {V4L2_AV1_FRAME_FLAG_IS_MOTION_MODE_SWITCHABLE, "IS_MOTION_MODE_SWITCHABLE"},
> +		  {V4L2_AV1_FRAME_FLAG_USE_REF_FRAME_MVS, "USE_REF_FRAME_MVS"},
> +		  {V4L2_AV1_FRAME_FLAG_DISABLE_FRAME_END_UPDATE_CDF,
> +		   "DISABLE_FRAME_END_UPDATE_CDF"},
> +		  {V4L2_AV1_FRAME_FLAG_ALLOW_WARPED_MOTION, "ALLOW_WARPED_MOTION"},
> +		  {V4L2_AV1_FRAME_FLAG_REFERENCE_SELECT, "REFERENCE_SELECT"},
> +		  {V4L2_AV1_FRAME_FLAG_REDUCED_TX_SET, "REDUCED_TX_SET"},
> +		  {V4L2_AV1_FRAME_FLAG_SKIP_MODE_ALLOWED, "SKIP_MODE_ALLOWED"},
> +		  {V4L2_AV1_FRAME_FLAG_SKIP_MODE_PRESENT, "SKIP_MODE_PRESENT"},
> +		  {V4L2_AV1_FRAME_FLAG_FRAME_SIZE_OVERRIDE, "FRAME_SIZE_OVERRIDE"},
> +		  {V4L2_AV1_FRAME_FLAG_BUFFER_REMOVAL_TIME_PRESENT, "BUFFER_REMOVAL_TIME_PRESENT"},
> +		  {V4L2_AV1_FRAME_FLAG_FRAME_REFS_SHORT_SIGNALING, "FRAME_REFS_SHORT_SIGNALING"}),
> +		  __entry->f.order_hint,
> +		  __entry->f.upscaled_width,
> +		  __entry->f.frame_width_minus_1,
> +		  __entry->f.frame_height_minus_1,
> +		  __entry->f.render_width_minus_1,
> +		  __entry->f.render_height_minus_1,
> +		  __entry->f.current_frame_id,
> +		  __print_array(__entry->f.buffer_removal_time,
> +				ARRAY_SIZE(__entry->f.buffer_removal_time),
> +				sizeof(__entry->f.buffer_removal_time[0])),
> +		  __print_array(__entry->f.order_hints,
> +				ARRAY_SIZE(__entry->f.order_hints),
> +				sizeof(__entry->f.order_hints[0])),
> +		  __print_array(__entry->f.reference_frame_ts,
> +				ARRAY_SIZE(__entry->f.reference_frame_ts),
> +				sizeof(__entry->f.reference_frame_ts[0])),
> +		  __print_array(__entry->f.ref_frame_idx,
> +				ARRAY_SIZE(__entry->f.ref_frame_idx),
> +				sizeof(__entry->f.ref_frame_idx[0])),
> +		  __entry->f.refresh_frame_flags
> +	)
> +);
> +
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_av1_film_grain_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_av1_film_grain *f),
> +	TP_ARGS(f),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_av1_film_grain, f)),
> +	TP_fast_assign(__entry->f = *f;),
> +	TP_printk("\nflags %s\ncr_mult: %u\ngrain_seed: %u\n"
> +		  "film_grain_params_ref_idx: %u\nnum_y_points: %u\npoint_y_value: %s\n"
> +		  "point_y_scaling: %s\nnum_cb_points: %u\npoint_cb_value: %s\n"
> +		  "point_cb_scaling: %s\nnum_cr_points: %u\npoint_cr_value: %s\n"
> +		  "point_cr_scaling: %s\ngrain_scaling_minus_8: %u\nar_coeff_lag: %u\n"
> +		  "ar_coeffs_y_plus_128: %s\nar_coeffs_cb_plus_128: %s\n"
> +		  "ar_coeffs_cr_plus_128: %s\nar_coeff_shift_minus_6: %u\n"
> +		  "grain_scale_shift: %u\ncb_mult: %u\ncb_luma_mult: %u\ncr_luma_mult: %u\n"
> +		  "cb_offset: %u\ncr_offset: %u\n",
> +		  __print_flags(__entry->f.flags, "|",
> +		  {V4L2_AV1_FILM_GRAIN_FLAG_APPLY_GRAIN, "APPLY_GRAIN"},
> +		  {V4L2_AV1_FILM_GRAIN_FLAG_UPDATE_GRAIN, "UPDATE_GRAIN"},
> +		  {V4L2_AV1_FILM_GRAIN_FLAG_CHROMA_SCALING_FROM_LUMA, "CHROMA_SCALING_FROM_LUMA"},
> +		  {V4L2_AV1_FILM_GRAIN_FLAG_OVERLAP, "OVERLAP"},
> +		  {V4L2_AV1_FILM_GRAIN_FLAG_CLIP_TO_RESTRICTED_RANGE, "CLIP_TO_RESTRICTED_RANGE"}),
> +		  __entry->f.cr_mult,
> +		  __entry->f.grain_seed,
> +		  __entry->f.film_grain_params_ref_idx,
> +		  __entry->f.num_y_points,
> +		  __print_array(__entry->f.point_y_value,
> +				ARRAY_SIZE(__entry->f.point_y_value),
> +				sizeof(__entry->f.point_y_value[0])),
> +		  __print_array(__entry->f.point_y_scaling,
> +				ARRAY_SIZE(__entry->f.point_y_scaling),
> +				sizeof(__entry->f.point_y_scaling[0])),
> +		  __entry->f.num_cb_points,
> +		  __print_array(__entry->f.point_cb_value,
> +				ARRAY_SIZE(__entry->f.point_cb_value),
> +				sizeof(__entry->f.point_cb_value[0])),
> +		  __print_array(__entry->f.point_cb_scaling,
> +				ARRAY_SIZE(__entry->f.point_cb_scaling),
> +				sizeof(__entry->f.point_cb_scaling[0])),
> +		  __entry->f.num_cr_points,
> +		  __print_array(__entry->f.point_cr_value,
> +				ARRAY_SIZE(__entry->f.point_cr_value),
> +				sizeof(__entry->f.point_cr_value[0])),
> +		  __print_array(__entry->f.point_cr_scaling,
> +				ARRAY_SIZE(__entry->f.point_cr_scaling),
> +				sizeof(__entry->f.point_cr_scaling[0])),
> +		  __entry->f.grain_scaling_minus_8,
> +		  __entry->f.ar_coeff_lag,
> +		  __print_array(__entry->f.ar_coeffs_y_plus_128,
> +				ARRAY_SIZE(__entry->f.ar_coeffs_y_plus_128),
> +				sizeof(__entry->f.ar_coeffs_y_plus_128[0])),
> +		  __print_array(__entry->f.ar_coeffs_cb_plus_128,
> +				ARRAY_SIZE(__entry->f.ar_coeffs_cb_plus_128),
> +				sizeof(__entry->f.ar_coeffs_cb_plus_128[0])),
> +		  __print_array(__entry->f.ar_coeffs_cr_plus_128,
> +				ARRAY_SIZE(__entry->f.ar_coeffs_cr_plus_128),
> +				sizeof(__entry->f.ar_coeffs_cr_plus_128[0])),
> +		  __entry->f.ar_coeff_shift_minus_6,
> +		  __entry->f.grain_scale_shift,
> +		  __entry->f.cb_mult,
> +		  __entry->f.cb_luma_mult,
> +		  __entry->f.cr_luma_mult,
> +		  __entry->f.cb_offset,
> +		  __entry->f.cr_offset
> +	)
> +)
> +
> +DEFINE_EVENT(v4l2_ctrl_av1_seq_tmpl, v4l2_ctrl_av1_sequence,
> +	TP_PROTO(const struct v4l2_ctrl_av1_sequence *s),
> +	TP_ARGS(s)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_av1_frame_tmpl, v4l2_ctrl_av1_frame,
> +	TP_PROTO(const struct v4l2_ctrl_av1_frame *f),
> +	TP_ARGS(f)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_av1_tge_tmpl, v4l2_ctrl_av1_tile_group_entry,
> +	TP_PROTO(const struct v4l2_ctrl_av1_tile_group_entry *t),
> +	TP_ARGS(t)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_av1_film_grain_tmpl, v4l2_ctrl_av1_film_grain,
> +	TP_PROTO(const struct v4l2_ctrl_av1_film_grain *f),
> +	TP_ARGS(f)
> +);
> +
> +/* FWHT controls */
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_fwht_params_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_fwht_params *p),
> +	TP_ARGS(p),
> +	TP_STRUCT__entry(
> +			 __field(u64, backward_ref_ts)
> +			 __field(u32, version)
> +			 __field(u32, width)
> +			 __field(u32, height)
> +			 __field(u32, flags)
> +			 __field(u32, colorspace)
> +			 __field(u32, xfer_func)
> +			 __field(u32, ycbcr_enc)
> +			 __field(u32, quantization)
> +			 ),
> +	TP_fast_assign(
> +		       __entry->backward_ref_ts = p->backward_ref_ts;
> +		       __entry->version = p->version;
> +		       __entry->width = p->width;
> +		       __entry->height = p->height;
> +		       __entry->flags = p->flags;
> +		       __entry->colorspace = p->colorspace;
> +		       __entry->xfer_func = p->xfer_func;
> +		       __entry->ycbcr_enc = p->ycbcr_enc;
> +		       __entry->quantization = p->quantization;
> +		       ),
> +	TP_printk("backward_ref_ts %llu version %u width %u height %u flags %s colorspace %u xfer_func %u ycbcr_enc %u quantization %u",
> +		  __entry->backward_ref_ts, __entry->version, __entry->width, __entry->height,
> +		  __print_flags(__entry->flags, "|",
> +		  {V4L2_FWHT_FL_IS_INTERLACED, "IS_INTERLACED"},
> +		  {V4L2_FWHT_FL_IS_BOTTOM_FIRST, "IS_BOTTOM_FIRST"},
> +		  {V4L2_FWHT_FL_IS_ALTERNATE, "IS_ALTERNATE"},
> +		  {V4L2_FWHT_FL_IS_BOTTOM_FIELD, "IS_BOTTOM_FIELD"},
> +		  {V4L2_FWHT_FL_LUMA_IS_UNCOMPRESSED, "LUMA_IS_UNCOMPRESSED"},
> +		  {V4L2_FWHT_FL_CB_IS_UNCOMPRESSED, "CB_IS_UNCOMPRESSED"},
> +		  {V4L2_FWHT_FL_CR_IS_UNCOMPRESSED, "CR_IS_UNCOMPRESSED"},
> +		  {V4L2_FWHT_FL_ALPHA_IS_UNCOMPRESSED, "ALPHA_IS_UNCOMPRESSED"},
> +		  {V4L2_FWHT_FL_I_FRAME, "I_FRAME"},
> +		  {V4L2_FWHT_FL_PIXENC_HSV, "PIXENC_HSV"},
> +		  {V4L2_FWHT_FL_PIXENC_RGB, "PIXENC_RGB"},
> +		  {V4L2_FWHT_FL_PIXENC_YUV, "PIXENC_YUV"}),
> +		  __entry->colorspace, __entry->xfer_func, __entry->ycbcr_enc,
> +		  __entry->quantization)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_fwht_params_tmpl, v4l2_ctrl_fwht_params,
> +	TP_PROTO(const struct v4l2_ctrl_fwht_params *p),
> +	TP_ARGS(p)
> +);
> +
> +/* H264 controls */
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_h264_sps_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_h264_sps *s),
> +	TP_ARGS(s),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_sps, s)),
> +	TP_fast_assign(__entry->s = *s),
> +	TP_printk("\nprofile_idc %u\n"
> +		  "constraint_set_flags %s\n"
> +		  "level_idc %u\n"
> +		  "seq_parameter_set_id %u\n"
> +		  "chroma_format_idc %u\n"
> +		  "bit_depth_luma_minus8 %u\n"
> +		  "bit_depth_chroma_minus8 %u\n"
> +		  "log2_max_frame_num_minus4 %u\n"
> +		  "pic_order_cnt_type %u\n"
> +		  "log2_max_pic_order_cnt_lsb_minus4 %u\n"
> +		  "max_num_ref_frames %u\n"
> +		  "num_ref_frames_in_pic_order_cnt_cycle %u\n"
> +		  "offset_for_ref_frame %s\n"
> +		  "offset_for_non_ref_pic %d\n"
> +		  "offset_for_top_to_bottom_field %d\n"
> +		  "pic_width_in_mbs_minus1 %u\n"
> +		  "pic_height_in_map_units_minus1 %u\n"
> +		  "flags %s",
> +		  __entry->s.profile_idc,
> +		  __print_flags(__entry->s.constraint_set_flags, "|",
> +		  {V4L2_H264_SPS_CONSTRAINT_SET0_FLAG, "CONSTRAINT_SET0_FLAG"},
> +		  {V4L2_H264_SPS_CONSTRAINT_SET1_FLAG, "CONSTRAINT_SET1_FLAG"},
> +		  {V4L2_H264_SPS_CONSTRAINT_SET2_FLAG, "CONSTRAINT_SET2_FLAG"},
> +		  {V4L2_H264_SPS_CONSTRAINT_SET3_FLAG, "CONSTRAINT_SET3_FLAG"},
> +		  {V4L2_H264_SPS_CONSTRAINT_SET4_FLAG, "CONSTRAINT_SET4_FLAG"},
> +		  {V4L2_H264_SPS_CONSTRAINT_SET5_FLAG, "CONSTRAINT_SET5_FLAG"}),
> +		  __entry->s.level_idc,
> +		  __entry->s.seq_parameter_set_id,
> +		  __entry->s.chroma_format_idc,
> +		  __entry->s.bit_depth_luma_minus8,
> +		  __entry->s.bit_depth_chroma_minus8,
> +		  __entry->s.log2_max_frame_num_minus4,
> +		  __entry->s.pic_order_cnt_type,
> +		  __entry->s.log2_max_pic_order_cnt_lsb_minus4,
> +		  __entry->s.max_num_ref_frames,
> +		  __entry->s.num_ref_frames_in_pic_order_cnt_cycle,
> +		  __print_array(__entry->s.offset_for_ref_frame,
> +				ARRAY_SIZE(__entry->s.offset_for_ref_frame),
> +				sizeof(__entry->s.offset_for_ref_frame[0])),
> +		  __entry->s.offset_for_non_ref_pic,
> +		  __entry->s.offset_for_top_to_bottom_field,
> +		  __entry->s.pic_width_in_mbs_minus1,
> +		  __entry->s.pic_height_in_map_units_minus1,
> +		  __print_flags(__entry->s.flags, "|",
> +		  {V4L2_H264_SPS_FLAG_SEPARATE_COLOUR_PLANE, "SEPARATE_COLOUR_PLANE"},
> +		  {V4L2_H264_SPS_FLAG_QPPRIME_Y_ZERO_TRANSFORM_BYPASS, "QPPRIME_Y_ZERO_TRANSFORM_BYPASS"},
> +		  {V4L2_H264_SPS_FLAG_DELTA_PIC_ORDER_ALWAYS_ZERO, "DELTA_PIC_ORDER_ALWAYS_ZERO"},
> +		  {V4L2_H264_SPS_FLAG_GAPS_IN_FRAME_NUM_VALUE_ALLOWED, "GAPS_IN_FRAME_NUM_VALUE_ALLOWED"},
> +		  {V4L2_H264_SPS_FLAG_FRAME_MBS_ONLY, "FRAME_MBS_ONLY"},
> +		  {V4L2_H264_SPS_FLAG_MB_ADAPTIVE_FRAME_FIELD, "MB_ADAPTIVE_FRAME_FIELD"},
> +		  {V4L2_H264_SPS_FLAG_DIRECT_8X8_INFERENCE, "DIRECT_8X8_INFERENCE"}
> +		  ))
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_h264_pps_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_h264_pps *p),
> +	TP_ARGS(p),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_pps, p)),
> +	TP_fast_assign(__entry->p = *p),
> +	TP_printk("\npic_parameter_set_id %u\n"
> +		  "seq_parameter_set_id %u\n"
> +		  "num_slice_groups_minus1 %u\n"
> +		  "num_ref_idx_l0_default_active_minus1 %u\n"
> +		  "num_ref_idx_l1_default_active_minus1 %u\n"
> +		  "weighted_bipred_idc %u\n"
> +		  "pic_init_qp_minus26 %d\n"
> +		  "pic_init_qs_minus26 %d\n"
> +		  "chroma_qp_index_offset %d\n"
> +		  "second_chroma_qp_index_offset %d\n"
> +		  "flags %s",
> +		  __entry->p.pic_parameter_set_id,
> +		  __entry->p.seq_parameter_set_id,
> +		  __entry->p.num_slice_groups_minus1,
> +		  __entry->p.num_ref_idx_l0_default_active_minus1,
> +		  __entry->p.num_ref_idx_l1_default_active_minus1,
> +		  __entry->p.weighted_bipred_idc,
> +		  __entry->p.pic_init_qp_minus26,
> +		  __entry->p.pic_init_qs_minus26,
> +		  __entry->p.chroma_qp_index_offset,
> +		  __entry->p.second_chroma_qp_index_offset,
> +		  __print_flags(__entry->p.flags, "|",
> +		  {V4L2_H264_PPS_FLAG_ENTROPY_CODING_MODE, "ENTROPY_CODING_MODE"},
> +		  {V4L2_H264_PPS_FLAG_BOTTOM_FIELD_PIC_ORDER_IN_FRAME_PRESENT, "BOTTOM_FIELD_PIC_ORDER_IN_FRAME_PRESENT"},
> +		  {V4L2_H264_PPS_FLAG_WEIGHTED_PRED, "WEIGHTED_PRED"},
> +		  {V4L2_H264_PPS_FLAG_DEBLOCKING_FILTER_CONTROL_PRESENT, "DEBLOCKING_FILTER_CONTROL_PRESENT"},
> +		  {V4L2_H264_PPS_FLAG_CONSTRAINED_INTRA_PRED, "CONSTRAINED_INTRA_PRED"},
> +		  {V4L2_H264_PPS_FLAG_REDUNDANT_PIC_CNT_PRESENT, "REDUNDANT_PIC_CNT_PRESENT"},
> +		  {V4L2_H264_PPS_FLAG_TRANSFORM_8X8_MODE, "TRANSFORM_8X8_MODE"},
> +		  {V4L2_H264_PPS_FLAG_SCALING_MATRIX_PRESENT, "SCALING_MATRIX_PRESENT"}
> +		  ))
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_h264_scaling_matrix_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_h264_scaling_matrix *s),
> +	TP_ARGS(s),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_scaling_matrix, s)),
> +	TP_fast_assign(__entry->s = *s),
> +	TP_printk("\nscaling_list_4x4 {%s}\nscaling_list_8x8 {%s}",
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->s.scaling_list_4x4,
> +				   sizeof(__entry->s.scaling_list_4x4),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->s.scaling_list_8x8,
> +				   sizeof(__entry->s.scaling_list_8x8),
> +				   false)
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_h264_pred_weights_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_h264_pred_weights *p),
> +	TP_ARGS(p),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_pred_weights, p)),
> +	TP_fast_assign(__entry->p = *p),
> +	TP_printk("\nluma_log2_weight_denom %u\n"
> +		  "chroma_log2_weight_denom %u\n"
> +		  "weight_factor[0].luma_weight %s\n"
> +		  "weight_factor[0].luma_offset %s\n"
> +		  "weight_factor[0].chroma_weight {%s}\n"
> +		  "weight_factor[0].chroma_offset {%s}\n"
> +		  "weight_factor[1].luma_weight %s\n"
> +		  "weight_factor[1].luma_offset %s\n"
> +		  "weight_factor[1].chroma_weight {%s}\n"
> +		  "weight_factor[1].chroma_offset {%s}\n",
> +		  __entry->p.luma_log2_weight_denom,
> +		  __entry->p.chroma_log2_weight_denom,
> +		  __print_array(__entry->p.weight_factors[0].luma_weight,
> +				ARRAY_SIZE(__entry->p.weight_factors[0].luma_weight),
> +				sizeof(__entry->p.weight_factors[0].luma_weight[0])),
> +		  __print_array(__entry->p.weight_factors[0].luma_offset,
> +				ARRAY_SIZE(__entry->p.weight_factors[0].luma_offset),
> +				sizeof(__entry->p.weight_factors[0].luma_offset[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.weight_factors[0].chroma_weight,
> +				   sizeof(__entry->p.weight_factors[0].chroma_weight),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.weight_factors[0].chroma_offset,
> +				   sizeof(__entry->p.weight_factors[0].chroma_offset),
> +				   false),
> +		  __print_array(__entry->p.weight_factors[1].luma_weight,
> +				ARRAY_SIZE(__entry->p.weight_factors[1].luma_weight),
> +				sizeof(__entry->p.weight_factors[1].luma_weight[0])),
> +		  __print_array(__entry->p.weight_factors[1].luma_offset,
> +				ARRAY_SIZE(__entry->p.weight_factors[1].luma_offset),
> +				sizeof(__entry->p.weight_factors[1].luma_offset[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.weight_factors[1].chroma_weight,
> +				   sizeof(__entry->p.weight_factors[1].chroma_weight),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.weight_factors[1].chroma_offset,
> +				   sizeof(__entry->p.weight_factors[1].chroma_offset),
> +				   false)
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_h264_slice_params_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_h264_slice_params *s),
> +	TP_ARGS(s),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_slice_params, s)),
> +	TP_fast_assign(__entry->s = *s),
> +	TP_printk("\nheader_bit_size %u\n"
> +		  "first_mb_in_slice %u\n"
> +		  "slice_type %s\n"
> +		  "colour_plane_id %u\n"
> +		  "redundant_pic_cnt %u\n"
> +		  "cabac_init_idc %u\n"
> +		  "slice_qp_delta %d\n"
> +		  "slice_qs_delta %d\n"
> +		  "disable_deblocking_filter_idc %u\n"
> +		  "slice_alpha_c0_offset_div2 %u\n"
> +		  "slice_beta_offset_div2 %u\n"
> +		  "num_ref_idx_l0_active_minus1 %u\n"
> +		  "num_ref_idx_l1_active_minus1 %u\n"
> +		  "flags %s",
> +		  __entry->s.header_bit_size,
> +		  __entry->s.first_mb_in_slice,
> +		  __print_symbolic(__entry->s.slice_type,
> +		  {V4L2_H264_SLICE_TYPE_P, "P"},
> +		  {V4L2_H264_SLICE_TYPE_B, "B"},
> +		  {V4L2_H264_SLICE_TYPE_I, "I"},
> +		  {V4L2_H264_SLICE_TYPE_SP, "SP"},
> +		  {V4L2_H264_SLICE_TYPE_SI, "SI"}),
> +		  __entry->s.colour_plane_id,
> +		  __entry->s.redundant_pic_cnt,
> +		  __entry->s.cabac_init_idc,
> +		  __entry->s.slice_qp_delta,
> +		  __entry->s.slice_qs_delta,
> +		  __entry->s.disable_deblocking_filter_idc,
> +		  __entry->s.slice_alpha_c0_offset_div2,
> +		  __entry->s.slice_beta_offset_div2,
> +		  __entry->s.num_ref_idx_l0_active_minus1,
> +		  __entry->s.num_ref_idx_l1_active_minus1,
> +		  __print_flags(__entry->s.flags, "|",
> +		  {V4L2_H264_SLICE_FLAG_DIRECT_SPATIAL_MV_PRED, "DIRECT_SPATIAL_MV_PRED"},
> +		  {V4L2_H264_SLICE_FLAG_SP_FOR_SWITCH, "SP_FOR_SWITCH"})
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_h264_reference_tmpl,
> +	TP_PROTO(const struct v4l2_h264_reference *r, int i),
> +	TP_ARGS(r, i),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_h264_reference, r)
> +			 __field(int, i)),
> +	TP_fast_assign(__entry->r = *r; __entry->i = i;),
> +	TP_printk("[%d]: fields %s index %u",
> +		  __entry->i,
> +		  __print_flags(__entry->r.fields, "|",
> +		  {V4L2_H264_TOP_FIELD_REF, "TOP_FIELD_REF"},
> +		  {V4L2_H264_BOTTOM_FIELD_REF, "BOTTOM_FIELD_REF"},
> +		  {V4L2_H264_FRAME_REF, "FRAME_REF"}),
> +		  __entry->r.index
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_h264_decode_params_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_h264_decode_params *d),
> +	TP_ARGS(d),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_h264_decode_params, d)),
> +	TP_fast_assign(__entry->d = *d),
> +	TP_printk("\nnal_ref_idc %u\n"
> +		  "frame_num %u\n"
> +		  "top_field_order_cnt %d\n"
> +		  "bottom_field_order_cnt %d\n"
> +		  "idr_pic_id %u\n"
> +		  "pic_order_cnt_lsb %u\n"
> +		  "delta_pic_order_cnt_bottom %d\n"
> +		  "delta_pic_order_cnt0 %d\n"
> +		  "delta_pic_order_cnt1 %d\n"
> +		  "dec_ref_pic_marking_bit_size %u\n"
> +		  "pic_order_cnt_bit_size %u\n"
> +		  "slice_group_change_cycle %u\n"
> +		  "flags %s\n",
> +		  __entry->d.nal_ref_idc,
> +		  __entry->d.frame_num,
> +		  __entry->d.top_field_order_cnt,
> +		  __entry->d.bottom_field_order_cnt,
> +		  __entry->d.idr_pic_id,
> +		  __entry->d.pic_order_cnt_lsb,
> +		  __entry->d.delta_pic_order_cnt_bottom,
> +		  __entry->d.delta_pic_order_cnt0,
> +		  __entry->d.delta_pic_order_cnt1,
> +		  __entry->d.dec_ref_pic_marking_bit_size,
> +		  __entry->d.pic_order_cnt_bit_size,
> +		  __entry->d.slice_group_change_cycle,
> +		  __print_flags(__entry->d.flags, "|",
> +		  {V4L2_H264_DECODE_PARAM_FLAG_IDR_PIC, "IDR_PIC"},
> +		  {V4L2_H264_DECODE_PARAM_FLAG_FIELD_PIC, "FIELD_PIC"},
> +		  {V4L2_H264_DECODE_PARAM_FLAG_BOTTOM_FIELD, "BOTTOM_FIELD"},
> +		  {V4L2_H264_DECODE_PARAM_FLAG_PFRAME, "PFRAME"},
> +		  {V4L2_H264_DECODE_PARAM_FLAG_BFRAME, "BFRAME"})
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_h264_dpb_entry_tmpl,
> +	TP_PROTO(const struct v4l2_h264_dpb_entry *e, int i),
> +	TP_ARGS(e, i),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_h264_dpb_entry, e)
> +			 __field(int, i)),
> +	TP_fast_assign(__entry->e = *e; __entry->i = i;),
> +	TP_printk("[%d]: reference_ts %llu, pic_num %u frame_num %u fields %s "
> +		  "top_field_order_cnt %d bottom_field_order_cnt %d flags %s",
> +		  __entry->i,
> +		  __entry->e.reference_ts,
> +		  __entry->e.pic_num,
> +		  __entry->e.frame_num,
> +		  __print_flags(__entry->e.fields, "|",
> +		  {V4L2_H264_TOP_FIELD_REF, "TOP_FIELD_REF"},
> +		  {V4L2_H264_BOTTOM_FIELD_REF, "BOTTOM_FIELD_REF"},
> +		  {V4L2_H264_FRAME_REF, "FRAME_REF"}),
> +		  __entry->e.top_field_order_cnt,
> +		  __entry->e.bottom_field_order_cnt,
> +		  __print_flags(__entry->e.flags, "|",
> +		  {V4L2_H264_DPB_ENTRY_FLAG_VALID, "VALID"},
> +		  {V4L2_H264_DPB_ENTRY_FLAG_ACTIVE, "ACTIVE"},
> +		  {V4L2_H264_DPB_ENTRY_FLAG_LONG_TERM, "LONG_TERM"},
> +		  {V4L2_H264_DPB_ENTRY_FLAG_FIELD, "FIELD"})
> +
> +	)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_h264_sps_tmpl, v4l2_ctrl_h264_sps,
> +	TP_PROTO(const struct v4l2_ctrl_h264_sps *s),
> +	TP_ARGS(s)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_h264_pps_tmpl, v4l2_ctrl_h264_pps,
> +	TP_PROTO(const struct v4l2_ctrl_h264_pps *p),
> +	TP_ARGS(p)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_h264_scaling_matrix_tmpl, v4l2_ctrl_h264_scaling_matrix,
> +	TP_PROTO(const struct v4l2_ctrl_h264_scaling_matrix *s),
> +	TP_ARGS(s)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_h264_pred_weights_tmpl, v4l2_ctrl_h264_pred_weights,
> +	TP_PROTO(const struct v4l2_ctrl_h264_pred_weights *p),
> +	TP_ARGS(p)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_h264_slice_params_tmpl, v4l2_ctrl_h264_slice_params,
> +	TP_PROTO(const struct v4l2_ctrl_h264_slice_params *s),
> +	TP_ARGS(s)
> +);
> +
> +DEFINE_EVENT(v4l2_h264_reference_tmpl, v4l2_h264_ref_pic_list0,
> +	TP_PROTO(const struct v4l2_h264_reference *r, int i),
> +	TP_ARGS(r, i)
> +);
> +
> +DEFINE_EVENT(v4l2_h264_reference_tmpl, v4l2_h264_ref_pic_list1,
> +	TP_PROTO(const struct v4l2_h264_reference *r, int i),
> +	TP_ARGS(r, i)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_h264_decode_params_tmpl, v4l2_ctrl_h264_decode_params,
> +	TP_PROTO(const struct v4l2_ctrl_h264_decode_params *d),
> +	TP_ARGS(d)
> +);
> +
> +DEFINE_EVENT(v4l2_h264_dpb_entry_tmpl, v4l2_h264_dpb_entry,
> +	TP_PROTO(const struct v4l2_h264_dpb_entry *e, int i),
> +	TP_ARGS(e, i)
> +);
> +
> +/* HEVC controls */
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_sps_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_sps *s),
> +	TP_ARGS(s),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_sps, s)),
> +	TP_fast_assign(__entry->s = *s),
> +	TP_printk("\nvideo_parameter_set_id %u\n"
> +		  "seq_parameter_set_id %u\n"
> +		  "pic_width_in_luma_samples %u\n"
> +		  "pic_height_in_luma_samples %u\n"
> +		  "bit_depth_luma_minus8 %u\n"
> +		  "bit_depth_chroma_minus8 %u\n"
> +		  "log2_max_pic_order_cnt_lsb_minus4 %u\n"
> +		  "sps_max_dec_pic_buffering_minus1 %u\n"
> +		  "sps_max_num_reorder_pics %u\n"
> +		  "sps_max_latency_increase_plus1 %u\n"
> +		  "log2_min_luma_coding_block_size_minus3 %u\n"
> +		  "log2_diff_max_min_luma_coding_block_size %u\n"
> +		  "log2_min_luma_transform_block_size_minus2 %u\n"
> +		  "log2_diff_max_min_luma_transform_block_size %u\n"
> +		  "max_transform_hierarchy_depth_inter %u\n"
> +		  "max_transform_hierarchy_depth_intra %u\n"
> +		  "pcm_sample_bit_depth_luma_minus1 %u\n"
> +		  "pcm_sample_bit_depth_chroma_minus1 %u\n"
> +		  "log2_min_pcm_luma_coding_block_size_minus3 %u\n"
> +		  "log2_diff_max_min_pcm_luma_coding_block_size %u\n"
> +		  "num_short_term_ref_pic_sets %u\n"
> +		  "num_long_term_ref_pics_sps %u\n"
> +		  "chroma_format_idc %u\n"
> +		  "sps_max_sub_layers_minus1 %u\n"
> +		  "flags %s",
> +		  __entry->s.video_parameter_set_id,
> +		  __entry->s.seq_parameter_set_id,
> +		  __entry->s.pic_width_in_luma_samples,
> +		  __entry->s.pic_height_in_luma_samples,
> +		  __entry->s.bit_depth_luma_minus8,
> +		  __entry->s.bit_depth_chroma_minus8,
> +		  __entry->s.log2_max_pic_order_cnt_lsb_minus4,
> +		  __entry->s.sps_max_dec_pic_buffering_minus1,
> +		  __entry->s.sps_max_num_reorder_pics,
> +		  __entry->s.sps_max_latency_increase_plus1,
> +		  __entry->s.log2_min_luma_coding_block_size_minus3,
> +		  __entry->s.log2_diff_max_min_luma_coding_block_size,
> +		  __entry->s.log2_min_luma_transform_block_size_minus2,
> +		  __entry->s.log2_diff_max_min_luma_transform_block_size,
> +		  __entry->s.max_transform_hierarchy_depth_inter,
> +		  __entry->s.max_transform_hierarchy_depth_intra,
> +		  __entry->s.pcm_sample_bit_depth_luma_minus1,
> +		  __entry->s.pcm_sample_bit_depth_chroma_minus1,
> +		  __entry->s.log2_min_pcm_luma_coding_block_size_minus3,
> +		  __entry->s.log2_diff_max_min_pcm_luma_coding_block_size,
> +		  __entry->s.num_short_term_ref_pic_sets,
> +		  __entry->s.num_long_term_ref_pics_sps,
> +		  __entry->s.chroma_format_idc,
> +		  __entry->s.sps_max_sub_layers_minus1,
> +		  __print_flags(__entry->s.flags, "|",
> +		  {V4L2_HEVC_SPS_FLAG_SEPARATE_COLOUR_PLANE, "SEPARATE_COLOUR_PLANE"},
> +		  {V4L2_HEVC_SPS_FLAG_SCALING_LIST_ENABLED, "SCALING_LIST_ENABLED"},
> +		  {V4L2_HEVC_SPS_FLAG_AMP_ENABLED, "AMP_ENABLED"},
> +		  {V4L2_HEVC_SPS_FLAG_SAMPLE_ADAPTIVE_OFFSET, "SAMPLE_ADAPTIVE_OFFSET"},
> +		  {V4L2_HEVC_SPS_FLAG_PCM_ENABLED, "PCM_ENABLED"},
> +		  {V4L2_HEVC_SPS_FLAG_PCM_LOOP_FILTER_DISABLED, "V4L2_HEVC_SPS_FLAG_PCM_LOOP_FILTER_DISABLED"},
> +		  {V4L2_HEVC_SPS_FLAG_LONG_TERM_REF_PICS_PRESENT, "LONG_TERM_REF_PICS_PRESENT"},
> +		  {V4L2_HEVC_SPS_FLAG_SPS_TEMPORAL_MVP_ENABLED, "TEMPORAL_MVP_ENABLED"},
> +		  {V4L2_HEVC_SPS_FLAG_STRONG_INTRA_SMOOTHING_ENABLED, "STRONG_INTRA_SMOOTHING_ENABLED"}
> +	))
> +
> +);
> +
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_pps_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_pps *p),
> +	TP_ARGS(p),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_pps, p)),
> +	TP_fast_assign(__entry->p = *p),
> +	TP_printk("\npic_parameter_set_id %u\n"
> +		  "num_extra_slice_header_bits %u\n"
> +		  "num_ref_idx_l0_default_active_minus1 %u\n"
> +		  "num_ref_idx_l1_default_active_minus1 %u\n"
> +		  "init_qp_minus26 %d\n"
> +		  "diff_cu_qp_delta_depth %u\n"
> +		  "pps_cb_qp_offset %d\n"
> +		  "pps_cr_qp_offset %d\n"
> +		  "num_tile_columns_minus1 %d\n"
> +		  "num_tile_rows_minus1 %d\n"
> +		  "column_width_minus1 %s\n"
> +		  "row_height_minus1 %s\n"
> +		  "pps_beta_offset_div2 %d\n"
> +		  "pps_tc_offset_div2 %d\n"
> +		  "log2_parallel_merge_level_minus2 %u\n"
> +		  "flags %s",
> +		  __entry->p.pic_parameter_set_id,
> +		  __entry->p.num_extra_slice_header_bits,
> +		  __entry->p.num_ref_idx_l0_default_active_minus1,
> +		  __entry->p.num_ref_idx_l1_default_active_minus1,
> +		  __entry->p.init_qp_minus26,
> +		  __entry->p.diff_cu_qp_delta_depth,
> +		  __entry->p.pps_cb_qp_offset,
> +		  __entry->p.pps_cr_qp_offset,
> +		  __entry->p.num_tile_columns_minus1,
> +		  __entry->p.num_tile_rows_minus1,
> +		  __print_array(__entry->p.column_width_minus1,
> +				ARRAY_SIZE(__entry->p.column_width_minus1),
> +				sizeof(__entry->p.column_width_minus1[0])),
> +		  __print_array(__entry->p.row_height_minus1,
> +				ARRAY_SIZE(__entry->p.row_height_minus1),
> +				sizeof(__entry->p.row_height_minus1[0])),
> +		  __entry->p.pps_beta_offset_div2,
> +		  __entry->p.pps_tc_offset_div2,
> +		  __entry->p.log2_parallel_merge_level_minus2,
> +		  __print_flags(__entry->p.flags, "|",
> +		  {V4L2_HEVC_PPS_FLAG_DEPENDENT_SLICE_SEGMENT_ENABLED, "DEPENDENT_SLICE_SEGMENT_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_OUTPUT_FLAG_PRESENT, "OUTPUT_FLAG_PRESENT"},
> +		  {V4L2_HEVC_PPS_FLAG_SIGN_DATA_HIDING_ENABLED, "SIGN_DATA_HIDING_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_CABAC_INIT_PRESENT, "CABAC_INIT_PRESENT"},
> +		  {V4L2_HEVC_PPS_FLAG_CONSTRAINED_INTRA_PRED, "CONSTRAINED_INTRA_PRED"},
> +		  {V4L2_HEVC_PPS_FLAG_CU_QP_DELTA_ENABLED, "CU_QP_DELTA_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT, "PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT"},
> +		  {V4L2_HEVC_PPS_FLAG_WEIGHTED_PRED, "WEIGHTED_PRED"},
> +		  {V4L2_HEVC_PPS_FLAG_WEIGHTED_BIPRED, "WEIGHTED_BIPRED"},
> +		  {V4L2_HEVC_PPS_FLAG_TRANSQUANT_BYPASS_ENABLED, "TRANSQUANT_BYPASS_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_TILES_ENABLED, "TILES_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_ENTROPY_CODING_SYNC_ENABLED, "ENTROPY_CODING_SYNC_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_LOOP_FILTER_ACROSS_TILES_ENABLED, "LOOP_FILTER_ACROSS_TILES_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_PPS_LOOP_FILTER_ACROSS_SLICES_ENABLED, "PPS_LOOP_FILTER_ACROSS_SLICES_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_DEBLOCKING_FILTER_OVERRIDE_ENABLED, "DEBLOCKING_FILTER_OVERRIDE_ENABLED"},
> +		  {V4L2_HEVC_PPS_FLAG_PPS_DISABLE_DEBLOCKING_FILTER, "DISABLE_DEBLOCKING_FILTER"},
> +		  {V4L2_HEVC_PPS_FLAG_LISTS_MODIFICATION_PRESENT, "LISTS_MODIFICATION_PRESENT"},
> +		  {V4L2_HEVC_PPS_FLAG_SLICE_SEGMENT_HEADER_EXTENSION_PRESENT, "SLICE_SEGMENT_HEADER_EXTENSION_PRESENT"},
> +		  {V4L2_HEVC_PPS_FLAG_DEBLOCKING_FILTER_CONTROL_PRESENT, "DEBLOCKING_FILTER_CONTROL_PRESENT"},
> +		  {V4L2_HEVC_PPS_FLAG_UNIFORM_SPACING, "UNIFORM_SPACING"}
> +	))
> +
> +);
> +
> +
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_slice_params_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_slice_params *s),
> +	TP_ARGS(s),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_slice_params, s)),
> +	TP_fast_assign(__entry->s = *s),
> +	TP_printk("\nbit_size %u\n"
> +		  "data_byte_offset %u\n"
> +		  "num_entry_point_offsets %u\n"
> +		  "nal_unit_type %u\n"
> +		  "nuh_temporal_id_plus1 %u\n"
> +		  "slice_type %u\n"
> +		  "colour_plane_id %u\n"
> +		  "slice_pic_order_cnt %d\n"
> +		  "num_ref_idx_l0_active_minus1 %u\n"
> +		  "num_ref_idx_l1_active_minus1 %u\n"
> +		  "collocated_ref_idx %u\n"
> +		  "five_minus_max_num_merge_cand %u\n"
> +		  "slice_qp_delta %d\n"
> +		  "slice_cb_qp_offset %d\n"
> +		  "slice_cr_qp_offset %d\n"
> +		  "slice_act_y_qp_offset %d\n"
> +		  "slice_act_cb_qp_offset %d\n"
> +		  "slice_act_cr_qp_offset %d\n"
> +		  "slice_beta_offset_div2 %d\n"
> +		  "slice_tc_offset_div2 %d\n"
> +		  "pic_struct %u\n"
> +		  "slice_segment_addr %u\n"
> +		  "ref_idx_l0 %s\n"
> +		  "ref_idx_l1 %s\n"
> +		  "short_term_ref_pic_set_size %u\n"
> +		  "long_term_ref_pic_set_size %u\n"
> +		  "flags %s",
> +		  __entry->s.bit_size,
> +		  __entry->s.data_byte_offset,
> +		  __entry->s.num_entry_point_offsets,
> +		  __entry->s.nal_unit_type,
> +		  __entry->s.nuh_temporal_id_plus1,
> +		  __entry->s.slice_type,
> +		  __entry->s.colour_plane_id,
> +		  __entry->s.slice_pic_order_cnt,
> +		  __entry->s.num_ref_idx_l0_active_minus1,
> +		  __entry->s.num_ref_idx_l1_active_minus1,
> +		  __entry->s.collocated_ref_idx,
> +		  __entry->s.five_minus_max_num_merge_cand,
> +		  __entry->s.slice_qp_delta,
> +		  __entry->s.slice_cb_qp_offset,
> +		  __entry->s.slice_cr_qp_offset,
> +		  __entry->s.slice_act_y_qp_offset,
> +		  __entry->s.slice_act_cb_qp_offset,
> +		  __entry->s.slice_act_cr_qp_offset,
> +		  __entry->s.slice_beta_offset_div2,
> +		  __entry->s.slice_tc_offset_div2,
> +		  __entry->s.pic_struct,
> +		  __entry->s.slice_segment_addr,
> +		  __print_array(__entry->s.ref_idx_l0,
> +				ARRAY_SIZE(__entry->s.ref_idx_l0),
> +				sizeof(__entry->s.ref_idx_l0[0])),
> +		  __print_array(__entry->s.ref_idx_l1,
> +				ARRAY_SIZE(__entry->s.ref_idx_l1),
> +				sizeof(__entry->s.ref_idx_l1[0])),
> +		  __entry->s.short_term_ref_pic_set_size,
> +		  __entry->s.long_term_ref_pic_set_size,
> +		  __print_flags(__entry->s.flags, "|",
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_SAO_LUMA, "SLICE_SAO_LUMA"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_SAO_CHROMA, "SLICE_SAO_CHROMA"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_TEMPORAL_MVP_ENABLED, "SLICE_TEMPORAL_MVP_ENABLED"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_MVD_L1_ZERO, "MVD_L1_ZERO"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_CABAC_INIT, "CABAC_INIT"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_COLLOCATED_FROM_L0, "COLLOCATED_FROM_L0"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_USE_INTEGER_MV, "USE_INTEGER_MV"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_DEBLOCKING_FILTER_DISABLED, "SLICE_DEBLOCKING_FILTER_DISABLED"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_SLICE_LOOP_FILTER_ACROSS_SLICES_ENABLED, "SLICE_LOOP_FILTER_ACROSS_SLICES_ENABLED"},
> +		  {V4L2_HEVC_SLICE_PARAMS_FLAG_DEPENDENT_SLICE_SEGMENT, "DEPENDENT_SLICE_SEGMENT"}
> +
> +	))
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_hevc_pred_weight_table_tmpl,
> +	TP_PROTO(const struct v4l2_hevc_pred_weight_table *p),
> +	TP_ARGS(p),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_hevc_pred_weight_table, p)),
> +	TP_fast_assign(__entry->p = *p),
> +	TP_printk("\ndelta_luma_weight_l0 %s\n"
> +		  "luma_offset_l0 %s\n"
> +		  "delta_chroma_weight_l0 {%s}\n"
> +		  "chroma_offset_l0 {%s}\n"
> +		  "delta_luma_weight_l1 %s\n"
> +		  "luma_offset_l1 %s\n"
> +		  "delta_chroma_weight_l1 {%s}\n"
> +		  "chroma_offset_l1 {%s}\n"
> +		  "luma_log2_weight_denom %d\n"
> +		  "delta_chroma_log2_weight_denom %d\n",
> +		  __print_array(__entry->p.delta_luma_weight_l0,
> +				ARRAY_SIZE(__entry->p.delta_luma_weight_l0),
> +				sizeof(__entry->p.delta_luma_weight_l0[0])),
> +		  __print_array(__entry->p.luma_offset_l0,
> +				ARRAY_SIZE(__entry->p.luma_offset_l0),
> +				sizeof(__entry->p.luma_offset_l0[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.delta_chroma_weight_l0,
> +				   sizeof(__entry->p.delta_chroma_weight_l0),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.chroma_offset_l0,
> +				   sizeof(__entry->p.chroma_offset_l0),
> +				   false),
> +		  __print_array(__entry->p.delta_luma_weight_l1,
> +				ARRAY_SIZE(__entry->p.delta_luma_weight_l1),
> +				sizeof(__entry->p.delta_luma_weight_l1[0])),
> +		  __print_array(__entry->p.luma_offset_l1,
> +				ARRAY_SIZE(__entry->p.luma_offset_l1),
> +				sizeof(__entry->p.luma_offset_l1[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.delta_chroma_weight_l1,
> +				   sizeof(__entry->p.delta_chroma_weight_l1),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.chroma_offset_l1,
> +				   sizeof(__entry->p.chroma_offset_l1),
> +				   false),
> +		__entry->p.luma_log2_weight_denom,
> +		__entry->p.delta_chroma_log2_weight_denom
> +
> +	))
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_scaling_matrix_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_scaling_matrix *s),
> +	TP_ARGS(s),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_scaling_matrix, s)),
> +	TP_fast_assign(__entry->s = *s),
> +	TP_printk("\nscaling_list_4x4 {%s}\n"
> +		  "scaling_list_8x8 {%s}\n"
> +		  "scaling_list_16x16 {%s}\n"
> +		  "scaling_list_32x32 {%s}\n"
> +		  "scaling_list_dc_coef_16x16 %s\n"
> +		  "scaling_list_dc_coef_32x32 %s\n",
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->s.scaling_list_4x4,
> +				   sizeof(__entry->s.scaling_list_4x4),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->s.scaling_list_8x8,
> +				   sizeof(__entry->s.scaling_list_8x8),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->s.scaling_list_16x16,
> +				   sizeof(__entry->s.scaling_list_16x16),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->s.scaling_list_32x32,
> +				   sizeof(__entry->s.scaling_list_32x32),
> +				   false),
> +		  __print_array(__entry->s.scaling_list_dc_coef_16x16,
> +				ARRAY_SIZE(__entry->s.scaling_list_dc_coef_16x16),
> +				sizeof(__entry->s.scaling_list_dc_coef_16x16[0])),
> +		  __print_array(__entry->s.scaling_list_dc_coef_32x32,
> +				ARRAY_SIZE(__entry->s.scaling_list_dc_coef_32x32),
> +				sizeof(__entry->s.scaling_list_dc_coef_32x32[0]))
> +	))
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_decode_params_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_decode_params *d),
> +	TP_ARGS(d),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_decode_params, d)),
> +	TP_fast_assign(__entry->d = *d),
> +	TP_printk("\npic_order_cnt_val %d\n"
> +		  "short_term_ref_pic_set_size %u\n"
> +		  "long_term_ref_pic_set_size %u\n"
> +		  "num_active_dpb_entries %u\n"
> +		  "num_poc_st_curr_before %u\n"
> +		  "num_poc_st_curr_after %u\n"
> +		  "num_poc_lt_curr %u\n"
> +		  "poc_st_curr_before %s\n"
> +		  "poc_st_curr_after %s\n"
> +		  "poc_lt_curr %s\n"
> +		  "flags %s",
> +		  __entry->d.pic_order_cnt_val,
> +		  __entry->d.short_term_ref_pic_set_size,
> +		  __entry->d.long_term_ref_pic_set_size,
> +		  __entry->d.num_active_dpb_entries,
> +		  __entry->d.num_poc_st_curr_before,
> +		  __entry->d.num_poc_st_curr_after,
> +		  __entry->d.num_poc_lt_curr,
> +		  __print_array(__entry->d.poc_st_curr_before,
> +				ARRAY_SIZE(__entry->d.poc_st_curr_before),
> +				sizeof(__entry->d.poc_st_curr_before[0])),
> +		  __print_array(__entry->d.poc_st_curr_after,
> +				ARRAY_SIZE(__entry->d.poc_st_curr_after),
> +				sizeof(__entry->d.poc_st_curr_after[0])),
> +		  __print_array(__entry->d.poc_lt_curr,
> +				ARRAY_SIZE(__entry->d.poc_lt_curr),
> +				sizeof(__entry->d.poc_lt_curr[0])),
> +		  __print_flags(__entry->d.flags, "|",
> +		  {V4L2_HEVC_DECODE_PARAM_FLAG_IRAP_PIC, "IRAP_PIC"},
> +		  {V4L2_HEVC_DECODE_PARAM_FLAG_IDR_PIC, "IDR_PIC"},
> +		  {V4L2_HEVC_DECODE_PARAM_FLAG_NO_OUTPUT_OF_PRIOR, "NO_OUTPUT_OF_PRIOR"}
> +	))
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_ext_sps_lt_rps_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_ext_sps_lt_rps *lt),
> +	TP_ARGS(lt),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_ext_sps_lt_rps, lt)),
> +	TP_fast_assign(__entry->lt = *lt),
> +	TP_printk("\nflags %s\n"
> +		  "lt_ref_pic_poc_lsb_sps %x\n",
> +		  __print_flags(__entry->lt.flags, "|",
> +		  {V4L2_HEVC_EXT_SPS_LT_RPS_FLAG_USED_LT, "USED_LT"}
> +		  ),
> +		  __entry->lt.lt_ref_pic_poc_lsb_sps
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_hevc_ext_sps_st_rps_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_ext_sps_st_rps *st),
> +	TP_ARGS(st),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_hevc_ext_sps_st_rps, st)),
> +	TP_fast_assign(__entry->st = *st),
> +	TP_printk("\nflags %s\n"
> +		  "delta_idx_minus1: %u\n"
> +		  "delta_rps_sign: %u\n"
> +		  "abs_delta_rps_minus1: %u\n"
> +		  "num_negative_pics: %u\n"
> +		  "num_positive_pics: %u\n"
> +		  "used_by_curr_pic: %08x\n"
> +		  "use_delta_flag: %08x\n"
> +		  "delta_poc_s0_minus1: %s\n"
> +		  "delta_poc_s1_minus1: %s\n",
> +		  __print_flags(__entry->st.flags, "|",
> +		  {V4L2_HEVC_EXT_SPS_ST_RPS_FLAG_INTER_REF_PIC_SET_PRED, "INTER_REF_PIC_SET_PRED"}
> +		  ),
> +		  __entry->st.delta_idx_minus1,
> +		  __entry->st.delta_rps_sign,
> +		  __entry->st.abs_delta_rps_minus1,
> +		  __entry->st.num_negative_pics,
> +		  __entry->st.num_positive_pics,
> +		  __entry->st.used_by_curr_pic,
> +		  __entry->st.use_delta_flag,
> +		  __print_array(__entry->st.delta_poc_s0_minus1,
> +				ARRAY_SIZE(__entry->st.delta_poc_s0_minus1),
> +				sizeof(__entry->st.delta_poc_s0_minus1[0])),
> +		  __print_array(__entry->st.delta_poc_s1_minus1,
> +				ARRAY_SIZE(__entry->st.delta_poc_s1_minus1),
> +				sizeof(__entry->st.delta_poc_s1_minus1[0]))
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_hevc_dpb_entry_tmpl,
> +	TP_PROTO(const struct v4l2_hevc_dpb_entry *e),
> +	TP_ARGS(e),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_hevc_dpb_entry, e)),
> +	TP_fast_assign(__entry->e = *e),
> +	TP_printk("\ntimestamp %llu\n"
> +		  "flags %s\n"
> +		  "field_pic %u\n"
> +		  "pic_order_cnt_val %d\n",
> +		__entry->e.timestamp,
> +		__print_flags(__entry->e.flags, "|",
> +		{V4L2_HEVC_DPB_ENTRY_LONG_TERM_REFERENCE, "LONG_TERM_REFERENCE"}
> +		  ),
> +		__entry->e.field_pic,
> +		__entry->e.pic_order_cnt_val
> +	))
> +
> +DEFINE_EVENT(v4l2_ctrl_hevc_sps_tmpl, v4l2_ctrl_hevc_sps,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_sps *s),
> +	TP_ARGS(s)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_hevc_pps_tmpl, v4l2_ctrl_hevc_pps,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_pps *p),
> +	TP_ARGS(p)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_hevc_slice_params_tmpl, v4l2_ctrl_hevc_slice_params,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_slice_params *s),
> +	TP_ARGS(s)
> +);
> +
> +DEFINE_EVENT(v4l2_hevc_pred_weight_table_tmpl, v4l2_hevc_pred_weight_table,
> +	TP_PROTO(const struct v4l2_hevc_pred_weight_table *p),
> +	TP_ARGS(p)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_hevc_scaling_matrix_tmpl, v4l2_ctrl_hevc_scaling_matrix,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_scaling_matrix *s),
> +	TP_ARGS(s)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_hevc_decode_params_tmpl, v4l2_ctrl_hevc_decode_params,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_decode_params *d),
> +	TP_ARGS(d)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_hevc_ext_sps_lt_rps_tmpl, v4l2_ctrl_hevc_ext_sps_lt_rps,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_ext_sps_lt_rps *lt),
> +	TP_ARGS(lt)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_hevc_ext_sps_st_rps_tmpl, v4l2_ctrl_hevc_ext_sps_st_rps,
> +	TP_PROTO(const struct v4l2_ctrl_hevc_ext_sps_st_rps *st),
> +	TP_ARGS(st)
> +);
> +
> +DEFINE_EVENT(v4l2_hevc_dpb_entry_tmpl, v4l2_hevc_dpb_entry,
> +	TP_PROTO(const struct v4l2_hevc_dpb_entry *e),
> +	TP_ARGS(e)
> +);
> +
> +/* MPEG2 controls */
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_mpeg2_seq_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_mpeg2_sequence *s),
> +	TP_ARGS(s),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_mpeg2_sequence, s)),
> +	TP_fast_assign(__entry->s = *s;),
> +	TP_printk("\nhorizontal_size %u\nvertical_size %u\nvbv_buffer_size %u\n"
> +		  "profile_and_level_indication %u\nchroma_format %u\nflags %s\n",
> +		  __entry->s.horizontal_size,
> +		  __entry->s.vertical_size,
> +		  __entry->s.vbv_buffer_size,
> +		  __entry->s.profile_and_level_indication,
> +		  __entry->s.chroma_format,
> +		  __print_flags(__entry->s.flags, "|",
> +		  {V4L2_MPEG2_SEQ_FLAG_PROGRESSIVE, "PROGRESSIVE"})
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_mpeg2_pic_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_mpeg2_picture *p),
> +	TP_ARGS(p),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_mpeg2_picture, p)),
> +	TP_fast_assign(__entry->p = *p;),
> +	TP_printk("\nbackward_ref_ts %llu\nforward_ref_ts %llu\nflags %s\nf_code {%s}\n"
> +		  "picture_coding_type: %u\npicture_structure %u\nintra_dc_precision %u\n",
> +		  __entry->p.backward_ref_ts,
> +		  __entry->p.forward_ref_ts,
> +		  __print_flags(__entry->p.flags, "|",
> +		  {V4L2_MPEG2_PIC_FLAG_TOP_FIELD_FIRST, "TOP_FIELD_FIRST"},
> +		  {V4L2_MPEG2_PIC_FLAG_FRAME_PRED_DCT, "FRAME_PRED_DCT"},
> +		  {V4L2_MPEG2_PIC_FLAG_CONCEALMENT_MV, "CONCEALMENT_MV"},
> +		  {V4L2_MPEG2_PIC_FLAG_Q_SCALE_TYPE, "Q_SCALE_TYPE"},
> +		  {V4L2_MPEG2_PIC_FLAG_INTRA_VLC, "INTA_VLC"},
> +		  {V4L2_MPEG2_PIC_FLAG_ALT_SCAN, "ALT_SCAN"},
> +		  {V4L2_MPEG2_PIC_FLAG_REPEAT_FIRST, "REPEAT_FIRST"},
> +		  {V4L2_MPEG2_PIC_FLAG_PROGRESSIVE, "PROGRESSIVE"}),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.f_code,
> +				   sizeof(__entry->p.f_code),
> +				   false),
> +		  __entry->p.picture_coding_type,
> +		  __entry->p.picture_structure,
> +		  __entry->p.intra_dc_precision
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_mpeg2_quant_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_mpeg2_quantisation *q),
> +	TP_ARGS(q),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_mpeg2_quantisation, q)),
> +	TP_fast_assign(__entry->q = *q;),
> +	TP_printk("\nintra_quantiser_matrix %s\nnon_intra_quantiser_matrix %s\n"
> +		  "chroma_intra_quantiser_matrix %s\nchroma_non_intra_quantiser_matrix %s\n",
> +		  __print_array(__entry->q.intra_quantiser_matrix,
> +				ARRAY_SIZE(__entry->q.intra_quantiser_matrix),
> +				sizeof(__entry->q.intra_quantiser_matrix[0])),
> +		  __print_array(__entry->q.non_intra_quantiser_matrix,
> +				ARRAY_SIZE(__entry->q.non_intra_quantiser_matrix),
> +				sizeof(__entry->q.non_intra_quantiser_matrix[0])),
> +		  __print_array(__entry->q.chroma_intra_quantiser_matrix,
> +				ARRAY_SIZE(__entry->q.chroma_intra_quantiser_matrix),
> +				sizeof(__entry->q.chroma_intra_quantiser_matrix[0])),
> +		  __print_array(__entry->q.chroma_non_intra_quantiser_matrix,
> +				ARRAY_SIZE(__entry->q.chroma_non_intra_quantiser_matrix),
> +				sizeof(__entry->q.chroma_non_intra_quantiser_matrix[0]))
> +		  )
> +)
> +
> +DEFINE_EVENT(v4l2_ctrl_mpeg2_seq_tmpl, v4l2_ctrl_mpeg2_sequence,
> +	TP_PROTO(const struct v4l2_ctrl_mpeg2_sequence *s),
> +	TP_ARGS(s)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_mpeg2_pic_tmpl, v4l2_ctrl_mpeg2_picture,
> +	TP_PROTO(const struct v4l2_ctrl_mpeg2_picture *p),
> +	TP_ARGS(p)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_mpeg2_quant_tmpl, v4l2_ctrl_mpeg2_quantisation,
> +	TP_PROTO(const struct v4l2_ctrl_mpeg2_quantisation *q),
> +	TP_ARGS(q)
> +);
> +
> +/* VP8 controls */
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_vp8_entropy_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_vp8_frame *f),
> +	TP_ARGS(f),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp8_frame, f)),
> +	TP_fast_assign(__entry->f = *f;),
> +	TP_printk("\nentropy.coeff_probs {%s}\n"
> +		  "entropy.y_mode_probs %s\n"
> +		  "entropy.uv_mode_probs %s\n"
> +		  "entropy.mv_probs {%s}",
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->f.entropy.coeff_probs,
> +				   sizeof(__entry->f.entropy.coeff_probs),
> +				   false),
> +		  __print_array(__entry->f.entropy.y_mode_probs,
> +				ARRAY_SIZE(__entry->f.entropy.y_mode_probs),
> +				sizeof(__entry->f.entropy.y_mode_probs[0])),
> +		  __print_array(__entry->f.entropy.uv_mode_probs,
> +				ARRAY_SIZE(__entry->f.entropy.uv_mode_probs),
> +				sizeof(__entry->f.entropy.uv_mode_probs[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->f.entropy.mv_probs,
> +				   sizeof(__entry->f.entropy.mv_probs),
> +				   false)
> +		  )
> +)
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_vp8_frame_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_vp8_frame *f),
> +	TP_ARGS(f),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp8_frame, f)),
> +	TP_fast_assign(__entry->f = *f;),
> +	TP_printk("\nsegment.quant_update %s\n"
> +		  "segment.lf_update %s\n"
> +		  "segment.segment_probs %s\n"
> +		  "segment.flags %s\n"
> +		  "lf.ref_frm_delta %s\n"
> +		  "lf.mb_mode_delta %s\n"
> +		  "lf.sharpness_level %u\n"
> +		  "lf.level %u\n"
> +		  "lf.flags %s\n"
> +		  "quant.y_ac_qi %u\n"
> +		  "quant.y_dc_delta %d\n"
> +		  "quant.y2_dc_delta %d\n"
> +		  "quant.y2_ac_delta %d\n"
> +		  "quant.uv_dc_delta %d\n"
> +		  "quant.uv_ac_delta %d\n"
> +		  "coder_state.range %u\n"
> +		  "coder_state.value %u\n"
> +		  "coder_state.bit_count %u\n"
> +		  "width %u\n"
> +		  "height %u\n"
> +		  "horizontal_scale %u\n"
> +		  "vertical_scale %u\n"
> +		  "version %u\n"
> +		  "prob_skip_false %u\n"
> +		  "prob_intra %u\n"
> +		  "prob_last %u\n"
> +		  "prob_gf %u\n"
> +		  "num_dct_parts %u\n"
> +		  "first_part_size %u\n"
> +		  "first_part_header_bits %u\n"
> +		  "dct_part_sizes %s\n"
> +		  "last_frame_ts %llu\n"
> +		  "golden_frame_ts %llu\n"
> +		  "alt_frame_ts %llu\n"
> +		  "flags %s",
> +		  __print_array(__entry->f.segment.quant_update,
> +				ARRAY_SIZE(__entry->f.segment.quant_update),
> +				sizeof(__entry->f.segment.quant_update[0])),
> +		  __print_array(__entry->f.segment.lf_update,
> +				ARRAY_SIZE(__entry->f.segment.lf_update),
> +				sizeof(__entry->f.segment.lf_update[0])),
> +		  __print_array(__entry->f.segment.segment_probs,
> +				ARRAY_SIZE(__entry->f.segment.segment_probs),
> +				sizeof(__entry->f.segment.segment_probs[0])),
> +		  __print_flags(__entry->f.segment.flags, "|",
> +		  {V4L2_VP8_SEGMENT_FLAG_ENABLED, "SEGMENT_ENABLED"},
> +		  {V4L2_VP8_SEGMENT_FLAG_UPDATE_MAP, "SEGMENT_UPDATE_MAP"},
> +		  {V4L2_VP8_SEGMENT_FLAG_UPDATE_FEATURE_DATA, "SEGMENT_UPDATE_FEATURE_DATA"},
> +		  {V4L2_VP8_SEGMENT_FLAG_DELTA_VALUE_MODE, "SEGMENT_DELTA_VALUE_MODE"}),
> +		  __print_array(__entry->f.lf.ref_frm_delta,
> +				ARRAY_SIZE(__entry->f.lf.ref_frm_delta),
> +				sizeof(__entry->f.lf.ref_frm_delta[0])),
> +		  __print_array(__entry->f.lf.mb_mode_delta,
> +				ARRAY_SIZE(__entry->f.lf.mb_mode_delta),
> +				sizeof(__entry->f.lf.mb_mode_delta[0])),
> +		  __entry->f.lf.sharpness_level,
> +		  __entry->f.lf.level,
> +		  __print_flags(__entry->f.lf.flags, "|",
> +		  {V4L2_VP8_LF_ADJ_ENABLE, "LF_ADJ_ENABLED"},
> +		  {V4L2_VP8_LF_DELTA_UPDATE, "LF_DELTA_UPDATE"},
> +		  {V4L2_VP8_LF_FILTER_TYPE_SIMPLE, "LF_FILTER_TYPE_SIMPLE"}),
> +		  __entry->f.quant.y_ac_qi,
> +		  __entry->f.quant.y_dc_delta,
> +		  __entry->f.quant.y2_dc_delta,
> +		  __entry->f.quant.y2_ac_delta,
> +		  __entry->f.quant.uv_dc_delta,
> +		  __entry->f.quant.uv_ac_delta,
> +		  __entry->f.coder_state.range,
> +		  __entry->f.coder_state.value,
> +		  __entry->f.coder_state.bit_count,
> +		  __entry->f.width,
> +		  __entry->f.height,
> +		  __entry->f.horizontal_scale,
> +		  __entry->f.vertical_scale,
> +		  __entry->f.version,
> +		  __entry->f.prob_skip_false,
> +		  __entry->f.prob_intra,
> +		  __entry->f.prob_last,
> +		  __entry->f.prob_gf,
> +		  __entry->f.num_dct_parts,
> +		  __entry->f.first_part_size,
> +		  __entry->f.first_part_header_bits,
> +		  __print_array(__entry->f.dct_part_sizes,
> +				ARRAY_SIZE(__entry->f.dct_part_sizes),
> +				sizeof(__entry->f.dct_part_sizes[0])),
> +		  __entry->f.last_frame_ts,
> +		  __entry->f.golden_frame_ts,
> +		  __entry->f.alt_frame_ts,
> +		  __print_flags(__entry->f.flags, "|",
> +		  {V4L2_VP8_FRAME_FLAG_KEY_FRAME, "KEY_FRAME"},
> +		  {V4L2_VP8_FRAME_FLAG_EXPERIMENTAL, "EXPERIMENTAL"},
> +		  {V4L2_VP8_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"},
> +		  {V4L2_VP8_FRAME_FLAG_MB_NO_SKIP_COEFF, "MB_NO_SKIP_COEFF"},
> +		  {V4L2_VP8_FRAME_FLAG_SIGN_BIAS_GOLDEN, "SIGN_BIAS_GOLDEN"},
> +		  {V4L2_VP8_FRAME_FLAG_SIGN_BIAS_ALT, "SIGN_BIAS_ALT"})
> +		  )
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_vp8_frame_tmpl, v4l2_ctrl_vp8_frame,
> +	TP_PROTO(const struct v4l2_ctrl_vp8_frame *f),
> +	TP_ARGS(f)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_vp8_entropy_tmpl, v4l2_ctrl_vp8_entropy,
> +	TP_PROTO(const struct v4l2_ctrl_vp8_frame *f),
> +	TP_ARGS(f)
> +);
> +
> +/* VP9 controls */
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_frame_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_vp9_frame *f),
> +	TP_ARGS(f),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_frame, f)),
> +	TP_fast_assign(__entry->f = *f;),
> +	TP_printk("\nlf.ref_deltas %s\n"
> +		  "lf.mode_deltas %s\n"
> +		  "lf.level %u\n"
> +		  "lf.sharpness %u\n"
> +		  "lf.flags %s\n"
> +		  "quant.base_q_idx %u\n"
> +		  "quant.delta_q_y_dc %d\n"
> +		  "quant.delta_q_uv_dc %d\n"
> +		  "quant.delta_q_uv_ac %d\n"
> +		  "seg.feature_data {%s}\n"
> +		  "seg.feature_enabled %s\n"
> +		  "seg.tree_probs %s\n"
> +		  "seg.pred_probs %s\n"
> +		  "seg.flags %s\n"
> +		  "flags %s\n"
> +		  "compressed_header_size %u\n"
> +		  "uncompressed_header_size %u\n"
> +		  "frame_width_minus_1 %u\n"
> +		  "frame_height_minus_1 %u\n"
> +		  "render_width_minus_1 %u\n"
> +		  "render_height_minus_1 %u\n"
> +		  "last_frame_ts %llu\n"
> +		  "golden_frame_ts %llu\n"
> +		  "alt_frame_ts %llu\n"
> +		  "ref_frame_sign_bias %s\n"
> +		  "reset_frame_context %s\n"
> +		  "frame_context_idx %u\n"
> +		  "profile %u\n"
> +		  "bit_depth %u\n"
> +		  "interpolation_filter %s\n"
> +		  "tile_cols_log2 %u\n"
> +		  "tile_rows_log_2 %u\n"
> +		  "reference_mode %s\n",
> +		  __print_array(__entry->f.lf.ref_deltas,
> +				ARRAY_SIZE(__entry->f.lf.ref_deltas),
> +				sizeof(__entry->f.lf.ref_deltas[0])),
> +		  __print_array(__entry->f.lf.mode_deltas,
> +				ARRAY_SIZE(__entry->f.lf.mode_deltas),
> +				sizeof(__entry->f.lf.mode_deltas[0])),
> +		  __entry->f.lf.level,
> +		  __entry->f.lf.sharpness,
> +		  __print_flags(__entry->f.lf.flags, "|",
> +		  {V4L2_VP9_LOOP_FILTER_FLAG_DELTA_ENABLED, "DELTA_ENABLED"},
> +		  {V4L2_VP9_LOOP_FILTER_FLAG_DELTA_UPDATE, "DELTA_UPDATE"}),
> +		  __entry->f.quant.base_q_idx,
> +		  __entry->f.quant.delta_q_y_dc,
> +		  __entry->f.quant.delta_q_uv_dc,
> +		  __entry->f.quant.delta_q_uv_ac,
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->f.seg.feature_data,
> +				   sizeof(__entry->f.seg.feature_data),
> +				   false),
> +		  __print_array(__entry->f.seg.feature_enabled,
> +				ARRAY_SIZE(__entry->f.seg.feature_enabled),
> +				sizeof(__entry->f.seg.feature_enabled[0])),
> +		  __print_array(__entry->f.seg.tree_probs,
> +				ARRAY_SIZE(__entry->f.seg.tree_probs),
> +				sizeof(__entry->f.seg.tree_probs[0])),
> +		  __print_array(__entry->f.seg.pred_probs,
> +				ARRAY_SIZE(__entry->f.seg.pred_probs),
> +				sizeof(__entry->f.seg.pred_probs[0])),
> +		  __print_flags(__entry->f.seg.flags, "|",
> +		  {V4L2_VP9_SEGMENTATION_FLAG_ENABLED, "ENABLED"},
> +		  {V4L2_VP9_SEGMENTATION_FLAG_UPDATE_MAP, "UPDATE_MAP"},
> +		  {V4L2_VP9_SEGMENTATION_FLAG_TEMPORAL_UPDATE, "TEMPORAL_UPDATE"},
> +		  {V4L2_VP9_SEGMENTATION_FLAG_UPDATE_DATA, "UPDATE_DATA"},
> +		  {V4L2_VP9_SEGMENTATION_FLAG_ABS_OR_DELTA_UPDATE, "ABS_OR_DELTA_UPDATE"}),
> +		  __print_flags(__entry->f.flags, "|",
> +		  {V4L2_VP9_FRAME_FLAG_KEY_FRAME, "KEY_FRAME"},
> +		  {V4L2_VP9_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"},
> +		  {V4L2_VP9_FRAME_FLAG_ERROR_RESILIENT, "ERROR_RESILIENT"},
> +		  {V4L2_VP9_FRAME_FLAG_INTRA_ONLY, "INTRA_ONLY"},
> +		  {V4L2_VP9_FRAME_FLAG_ALLOW_HIGH_PREC_MV, "ALLOW_HIGH_PREC_MV"},
> +		  {V4L2_VP9_FRAME_FLAG_REFRESH_FRAME_CTX, "REFRESH_FRAME_CTX"},
> +		  {V4L2_VP9_FRAME_FLAG_PARALLEL_DEC_MODE, "PARALLEL_DEC_MODE"},
> +		  {V4L2_VP9_FRAME_FLAG_X_SUBSAMPLING, "X_SUBSAMPLING"},
> +		  {V4L2_VP9_FRAME_FLAG_Y_SUBSAMPLING, "Y_SUBSAMPLING"},
> +		  {V4L2_VP9_FRAME_FLAG_COLOR_RANGE_FULL_SWING, "COLOR_RANGE_FULL_SWING"}),
> +		  __entry->f.compressed_header_size,
> +		  __entry->f.uncompressed_header_size,
> +		  __entry->f.frame_width_minus_1,
> +		  __entry->f.frame_height_minus_1,
> +		  __entry->f.render_width_minus_1,
> +		  __entry->f.render_height_minus_1,
> +		  __entry->f.last_frame_ts,
> +		  __entry->f.golden_frame_ts,
> +		  __entry->f.alt_frame_ts,
> +		  __print_symbolic(__entry->f.ref_frame_sign_bias,
> +		  {V4L2_VP9_SIGN_BIAS_LAST, "SIGN_BIAS_LAST"},
> +		  {V4L2_VP9_SIGN_BIAS_GOLDEN, "SIGN_BIAS_GOLDEN"},
> +		  {V4L2_VP9_SIGN_BIAS_ALT, "SIGN_BIAS_ALT"}),
> +		  __print_symbolic(__entry->f.reset_frame_context,
> +		  {V4L2_VP9_RESET_FRAME_CTX_NONE, "RESET_FRAME_CTX_NONE"},
> +		  {V4L2_VP9_RESET_FRAME_CTX_SPEC, "RESET_FRAME_CTX_SPEC"},
> +		  {V4L2_VP9_RESET_FRAME_CTX_ALL, "RESET_FRAME_CTX_ALL"}),
> +		  __entry->f.frame_context_idx,
> +		  __entry->f.profile,
> +		  __entry->f.bit_depth,
> +		  __print_symbolic(__entry->f.interpolation_filter,
> +		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP, "INTERP_FILTER_EIGHTTAP"},
> +		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP_SMOOTH, "INTERP_FILTER_EIGHTTAP_SMOOTH"},
> +		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP_SHARP, "INTERP_FILTER_EIGHTTAP_SHARP"},
> +		  {V4L2_VP9_INTERP_FILTER_BILINEAR, "INTERP_FILTER_BILINEAR"},
> +		  {V4L2_VP9_INTERP_FILTER_SWITCHABLE, "INTERP_FILTER_SWITCHABLE"}),
> +		  __entry->f.tile_cols_log2,
> +		  __entry->f.tile_rows_log2,
> +		  __print_symbolic(__entry->f.reference_mode,
> +		  {V4L2_VP9_REFERENCE_MODE_SINGLE_REFERENCE, "REFERENCE_MODE_SINGLE_REFERENCE"},
> +		  {V4L2_VP9_REFERENCE_MODE_COMPOUND_REFERENCE, "REFERENCE_MODE_COMPOUND_REFERENCE"},
> +		  {V4L2_VP9_REFERENCE_MODE_SELECT, "REFERENCE_MODE_SELECT"}))
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_compressed_hdr_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),
> +	TP_ARGS(h),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_compressed_hdr, h)),
> +	TP_fast_assign(__entry->h = *h;),
> +	TP_printk("\ntx_mode %s\n"
> +		  "tx8 {%s}\n"
> +		  "tx16 {%s}\n"
> +		  "tx32 {%s}\n"
> +		  "skip %s\n"
> +		  "inter_mode {%s}\n"
> +		  "interp_filter {%s}\n"
> +		  "is_inter %s\n"
> +		  "comp_mode %s\n"
> +		  "single_ref {%s}\n"
> +		  "comp_ref %s\n"
> +		  "y_mode {%s}\n"
> +		  "uv_mode {%s}\n"
> +		  "partition {%s}\n",
> +		  __print_symbolic(__entry->h.tx_mode,
> +		  {V4L2_VP9_TX_MODE_ONLY_4X4, "TX_MODE_ONLY_4X4"},
> +		  {V4L2_VP9_TX_MODE_ALLOW_8X8, "TX_MODE_ALLOW_8X8"},
> +		  {V4L2_VP9_TX_MODE_ALLOW_16X16, "TX_MODE_ALLOW_16X16"},
> +		  {V4L2_VP9_TX_MODE_ALLOW_32X32, "TX_MODE_ALLOW_32X32"},
> +		  {V4L2_VP9_TX_MODE_SELECT, "TX_MODE_SELECT"}),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.tx8,
> +				   sizeof(__entry->h.tx8),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.tx16,
> +				   sizeof(__entry->h.tx16),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.tx32,
> +				   sizeof(__entry->h.tx32),
> +				   false),
> +		  __print_array(__entry->h.skip,
> +				ARRAY_SIZE(__entry->h.skip),
> +				sizeof(__entry->h.skip[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.inter_mode,
> +				   sizeof(__entry->h.inter_mode),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.interp_filter,
> +				   sizeof(__entry->h.interp_filter),
> +				   false),
> +		  __print_array(__entry->h.is_inter,
> +				ARRAY_SIZE(__entry->h.is_inter),
> +				sizeof(__entry->h.is_inter[0])),
> +		  __print_array(__entry->h.comp_mode,
> +				ARRAY_SIZE(__entry->h.comp_mode),
> +				sizeof(__entry->h.comp_mode[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.single_ref,
> +				   sizeof(__entry->h.single_ref),
> +				   false),
> +		  __print_array(__entry->h.comp_ref,
> +				ARRAY_SIZE(__entry->h.comp_ref),
> +				sizeof(__entry->h.comp_ref[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.y_mode,
> +				   sizeof(__entry->h.y_mode),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.uv_mode,
> +				   sizeof(__entry->h.uv_mode),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.partition,
> +				   sizeof(__entry->h.partition),
> +				   false)
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_compressed_coef_tmpl,
> +	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),
> +	TP_ARGS(h),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_compressed_hdr, h)),
> +	TP_fast_assign(__entry->h = *h;),
> +	TP_printk("\n coef {%s}",
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->h.coef,
> +				   sizeof(__entry->h.coef),
> +				   false)
> +	)
> +);
> +
> +DECLARE_EVENT_CLASS(v4l2_vp9_mv_probs_tmpl,
> +	TP_PROTO(const struct v4l2_vp9_mv_probs *p),
> +	TP_ARGS(p),
> +	TP_STRUCT__entry(__field_struct(struct v4l2_vp9_mv_probs, p)),
> +	TP_fast_assign(__entry->p = *p;),
> +	TP_printk("\n joint %s\n"
> +		  "sign %s\n"
> +		  "classes {%s}\n"
> +		  "class0_bit %s\n"
> +		  "bits {%s}\n"
> +		  "class0_fr {%s}\n"
> +		  "fr {%s}\n"
> +		  "class0_hp %s\n"
> +		  "hp %s\n",
> +		  __print_array(__entry->p.joint,
> +				ARRAY_SIZE(__entry->p.joint),
> +				sizeof(__entry->p.joint[0])),
> +		  __print_array(__entry->p.sign,
> +				ARRAY_SIZE(__entry->p.sign),
> +				sizeof(__entry->p.sign[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.classes,
> +				   sizeof(__entry->p.classes),
> +				   false),
> +		  __print_array(__entry->p.class0_bit,
> +				ARRAY_SIZE(__entry->p.class0_bit),
> +				sizeof(__entry->p.class0_bit[0])),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.bits,
> +				   sizeof(__entry->p.bits),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.class0_fr,
> +				   sizeof(__entry->p.class0_fr),
> +				   false),
> +		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,
> +				   __entry->p.fr,
> +				   sizeof(__entry->p.fr),
> +				   false),
> +		  __print_array(__entry->p.class0_hp,
> +				ARRAY_SIZE(__entry->p.class0_hp),
> +				sizeof(__entry->p.class0_hp[0])),
> +		  __print_array(__entry->p.hp,
> +				ARRAY_SIZE(__entry->p.hp),
> +				sizeof(__entry->p.hp[0]))
> +	)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_vp9_frame_tmpl, v4l2_ctrl_vp9_frame,
> +	TP_PROTO(const struct v4l2_ctrl_vp9_frame *f),
> +	TP_ARGS(f)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_vp9_compressed_hdr_tmpl, v4l2_ctrl_vp9_compressed_hdr,
> +	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),
> +	TP_ARGS(h)
> +);
> +
> +DEFINE_EVENT(v4l2_ctrl_vp9_compressed_coef_tmpl, v4l2_ctrl_vp9_compressed_coeff,
> +	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),
> +	TP_ARGS(h)
> +);
> +
> +
> +DEFINE_EVENT(v4l2_vp9_mv_probs_tmpl, v4l2_vp9_mv_probs,
> +	TP_PROTO(const struct v4l2_vp9_mv_probs *p),
> +	TP_ARGS(p)
> +);
> +
> +#endif /* if !defined(_TRACE_V4L2_REQUESTS_H_) || defined(TRACE_HEADER_MULTI_READ) */
> +
> +#include <trace/define_trace.h>

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

  reply	other threads:[~2026-04-28 19:27 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-12 16:23 [PATCH 00/11] v4l2: Add tracing for stateless codecs Detlev Casanova
2026-02-12 16:23 ` [PATCH 01/11] media: Move visl traces to v4l2-core Detlev Casanova
2026-04-28 19:27   ` Nicolas Dufresne [this message]
2026-05-01 19:07   ` Steven Rostedt
2026-02-12 16:23 ` [PATCH 02/11] media: Reformat v4l2-requests trace event printk Detlev Casanova
2026-04-28 19:28   ` Nicolas Dufresne
2026-02-12 16:23 ` [PATCH 03/11] media: Add tgid and fd fields in v4l2_fh struct Detlev Casanova
2026-04-28 19:31   ` Nicolas Dufresne
2026-02-12 16:23 ` [PATCH 04/11] media: Add tgid and fd to the v4l2-requests trace fields Detlev Casanova
2026-04-28 19:32   ` Nicolas Dufresne
2026-02-12 16:23 ` [PATCH 05/11] media: Add missing types to v4l2_ctrl_ptr Detlev Casanova
2026-04-28 19:33   ` Nicolas Dufresne
2026-02-12 16:23 ` [PATCH 06/11] media: Trace the stateless controls when set in v4l2-ctrls-core.c Detlev Casanova
2026-04-28 19:37   ` Nicolas Dufresne
2026-02-12 16:23 ` [PATCH 07/11] media: Add stream on/off traces and run them in the ioctl Detlev Casanova
2026-02-12 16:23 ` [PATCH 08/11] media: Add HW run/done trace events Detlev Casanova
2026-02-12 16:23 ` [PATCH 09/11] media: hantro: Add v4l2_hw run/done traces Detlev Casanova
2026-02-12 16:23 ` [PATCH 10/11] media: v4l2: Add callback for show_fdinfo Detlev Casanova
2026-02-12 16:23 ` [PATCH 11/11] media: hantro: Add fdinfo callback Detlev Casanova
2026-04-28 19:41   ` Nicolas Dufresne
2026-04-28 19:52 ` [PATCH 00/11] v4l2: Add tracing for stateless codecs Nicolas Dufresne
2026-05-01 18:07   ` Detlev Casanova

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=514f697a6fe99b7af84df0f8d290fb479c847b11.camel@collabora.com \
    --to=nicolas.dufresne@collabora.com \
    --cc=benjamin.gaignard@collabora.com \
    --cc=dan.scally@ideasonboard.com \
    --cc=daniel.almeida@collabora.com \
    --cc=detlev.casanova@collabora.com \
    --cc=heiko@sntech.de \
    --cc=hverkuil@kernel.org \
    --cc=jacopo.mondi@ideasonboard.com \
    --cc=james.cowgill@blaize.com \
    --cc=kernel@collabora.com \
    --cc=laurent.pinchart+renesas@ideasonboard.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=linux-trace-kernel@vger.kernel.org \
    --cc=make24@iscas.ac.cn \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mchehab@kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=opensource206@gmail.com \
    --cc=p.zabel@pengutronix.de \
    --cc=ribalda@chromium.org \
    --cc=rostedt@goodmis.org \
    --cc=sakari.ailus@linux.intel.com \
    --cc=yunkec@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox