drivers/media/test-drivers/visl/visl-trace-vp9.h

Source file repositories/reference/linux-study-clean/drivers/media/test-drivers/visl/visl-trace-vp9.h

File Facts

System
Linux kernel
Corpus path
drivers/media/test-drivers/visl/visl-trace-vp9.h
Extension
.h
Size
10165 bytes
Lines
293
Domain
Driver Families
Bucket
drivers/media
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

#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"},

Annotation

Implementation Notes