brintos

brintos / linux-shallow public Read only

0
0
Text · 9.9 KiB · 362b92b Raw
293 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#if !defined(_VISL_TRACE_VP9_H_) || defined(TRACE_HEADER_MULTI_READ)3#define _VISL_TRACE_VP9_H_4 5#include <linux/tracepoint.h>6#include "visl.h"7 8#undef TRACE_SYSTEM9#define TRACE_SYSTEM visl_vp9_controls10 11DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_frame_tmpl,12	TP_PROTO(const struct v4l2_ctrl_vp9_frame *f),13	TP_ARGS(f),14	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_frame, f)),15	TP_fast_assign(__entry->f = *f;),16	TP_printk("\nlf.ref_deltas %s\n"17		  "lf.mode_deltas %s\n"18		  "lf.level %u\n"19		  "lf.sharpness %u\n"20		  "lf.flags %s\n"21		  "quant.base_q_idx %u\n"22		  "quant.delta_q_y_dc %d\n"23		  "quant.delta_q_uv_dc %d\n"24		  "quant.delta_q_uv_ac %d\n"25		  "seg.feature_data {%s}\n"26		  "seg.feature_enabled %s\n"27		  "seg.tree_probs %s\n"28		  "seg.pred_probs %s\n"29		  "seg.flags %s\n"30		  "flags %s\n"31		  "compressed_header_size %u\n"32		  "uncompressed_header_size %u\n"33		  "frame_width_minus_1 %u\n"34		  "frame_height_minus_1 %u\n"35		  "render_width_minus_1 %u\n"36		  "render_height_minus_1 %u\n"37		  "last_frame_ts %llu\n"38		  "golden_frame_ts %llu\n"39		  "alt_frame_ts %llu\n"40		  "ref_frame_sign_bias %s\n"41		  "reset_frame_context %s\n"42		  "frame_context_idx %u\n"43		  "profile %u\n"44		  "bit_depth %u\n"45		  "interpolation_filter %s\n"46		  "tile_cols_log2 %u\n"47		  "tile_rows_log_2 %u\n"48		  "reference_mode %s\n",49		  __print_array(__entry->f.lf.ref_deltas,50				ARRAY_SIZE(__entry->f.lf.ref_deltas),51				sizeof(__entry->f.lf.ref_deltas[0])),52		  __print_array(__entry->f.lf.mode_deltas,53				ARRAY_SIZE(__entry->f.lf.mode_deltas),54				sizeof(__entry->f.lf.mode_deltas[0])),55		  __entry->f.lf.level,56		  __entry->f.lf.sharpness,57		  __print_flags(__entry->f.lf.flags, "|",58		  {V4L2_VP9_LOOP_FILTER_FLAG_DELTA_ENABLED, "DELTA_ENABLED"},59		  {V4L2_VP9_LOOP_FILTER_FLAG_DELTA_UPDATE, "DELTA_UPDATE"}),60		  __entry->f.quant.base_q_idx,61		  __entry->f.quant.delta_q_y_dc,62		  __entry->f.quant.delta_q_uv_dc,63		  __entry->f.quant.delta_q_uv_ac,64		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,65				   __entry->f.seg.feature_data,66				   sizeof(__entry->f.seg.feature_data),67				   false),68		  __print_array(__entry->f.seg.feature_enabled,69				ARRAY_SIZE(__entry->f.seg.feature_enabled),70				sizeof(__entry->f.seg.feature_enabled[0])),71		  __print_array(__entry->f.seg.tree_probs,72				ARRAY_SIZE(__entry->f.seg.tree_probs),73				sizeof(__entry->f.seg.tree_probs[0])),74		  __print_array(__entry->f.seg.pred_probs,75				ARRAY_SIZE(__entry->f.seg.pred_probs),76				sizeof(__entry->f.seg.pred_probs[0])),77		  __print_flags(__entry->f.seg.flags, "|",78		  {V4L2_VP9_SEGMENTATION_FLAG_ENABLED, "ENABLED"},79		  {V4L2_VP9_SEGMENTATION_FLAG_UPDATE_MAP, "UPDATE_MAP"},80		  {V4L2_VP9_SEGMENTATION_FLAG_TEMPORAL_UPDATE, "TEMPORAL_UPDATE"},81		  {V4L2_VP9_SEGMENTATION_FLAG_UPDATE_DATA, "UPDATE_DATA"},82		  {V4L2_VP9_SEGMENTATION_FLAG_ABS_OR_DELTA_UPDATE, "ABS_OR_DELTA_UPDATE"}),83		  __print_flags(__entry->f.flags, "|",84		  {V4L2_VP9_FRAME_FLAG_KEY_FRAME, "KEY_FRAME"},85		  {V4L2_VP9_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"},86		  {V4L2_VP9_FRAME_FLAG_ERROR_RESILIENT, "ERROR_RESILIENT"},87		  {V4L2_VP9_FRAME_FLAG_INTRA_ONLY, "INTRA_ONLY"},88		  {V4L2_VP9_FRAME_FLAG_ALLOW_HIGH_PREC_MV, "ALLOW_HIGH_PREC_MV"},89		  {V4L2_VP9_FRAME_FLAG_REFRESH_FRAME_CTX, "REFRESH_FRAME_CTX"},90		  {V4L2_VP9_FRAME_FLAG_PARALLEL_DEC_MODE, "PARALLEL_DEC_MODE"},91		  {V4L2_VP9_FRAME_FLAG_X_SUBSAMPLING, "X_SUBSAMPLING"},92		  {V4L2_VP9_FRAME_FLAG_Y_SUBSAMPLING, "Y_SUBSAMPLING"},93		  {V4L2_VP9_FRAME_FLAG_COLOR_RANGE_FULL_SWING, "COLOR_RANGE_FULL_SWING"}),94		  __entry->f.compressed_header_size,95		  __entry->f.uncompressed_header_size,96		  __entry->f.frame_width_minus_1,97		  __entry->f.frame_height_minus_1,98		  __entry->f.render_width_minus_1,99		  __entry->f.render_height_minus_1,100		  __entry->f.last_frame_ts,101		  __entry->f.golden_frame_ts,102		  __entry->f.alt_frame_ts,103		  __print_symbolic(__entry->f.ref_frame_sign_bias,104		  {V4L2_VP9_SIGN_BIAS_LAST, "SIGN_BIAS_LAST"},105		  {V4L2_VP9_SIGN_BIAS_GOLDEN, "SIGN_BIAS_GOLDEN"},106		  {V4L2_VP9_SIGN_BIAS_ALT, "SIGN_BIAS_ALT"}),107		  __print_symbolic(__entry->f.reset_frame_context,108		  {V4L2_VP9_RESET_FRAME_CTX_NONE, "RESET_FRAME_CTX_NONE"},109		  {V4L2_VP9_RESET_FRAME_CTX_SPEC, "RESET_FRAME_CTX_SPEC"},110		  {V4L2_VP9_RESET_FRAME_CTX_ALL, "RESET_FRAME_CTX_ALL"}),111		  __entry->f.frame_context_idx,112		  __entry->f.profile,113		  __entry->f.bit_depth,114		  __print_symbolic(__entry->f.interpolation_filter,115		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP, "INTERP_FILTER_EIGHTTAP"},116		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP_SMOOTH, "INTERP_FILTER_EIGHTTAP_SMOOTH"},117		  {V4L2_VP9_INTERP_FILTER_EIGHTTAP_SHARP, "INTERP_FILTER_EIGHTTAP_SHARP"},118		  {V4L2_VP9_INTERP_FILTER_BILINEAR, "INTERP_FILTER_BILINEAR"},119		  {V4L2_VP9_INTERP_FILTER_SWITCHABLE, "INTERP_FILTER_SWITCHABLE"}),120		  __entry->f.tile_cols_log2,121		  __entry->f.tile_rows_log2,122		  __print_symbolic(__entry->f.reference_mode,123		  {V4L2_VP9_REFERENCE_MODE_SINGLE_REFERENCE, "REFERENCE_MODE_SINGLE_REFERENCE"},124		  {V4L2_VP9_REFERENCE_MODE_COMPOUND_REFERENCE, "REFERENCE_MODE_COMPOUND_REFERENCE"},125		  {V4L2_VP9_REFERENCE_MODE_SELECT, "REFERENCE_MODE_SELECT"}))126);127 128DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_compressed_hdr_tmpl,129	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),130	TP_ARGS(h),131	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_compressed_hdr, h)),132	TP_fast_assign(__entry->h = *h;),133	TP_printk("\ntx_mode %s\n"134		  "tx8 {%s}\n"135		  "tx16 {%s}\n"136		  "tx32 {%s}\n"137		  "skip %s\n"138		  "inter_mode {%s}\n"139		  "interp_filter {%s}\n"140		  "is_inter %s\n"141		  "comp_mode %s\n"142		  "single_ref {%s}\n"143		  "comp_ref %s\n"144		  "y_mode {%s}\n"145		  "uv_mode {%s}\n"146		  "partition {%s}\n",147		  __print_symbolic(__entry->h.tx_mode,148		  {V4L2_VP9_TX_MODE_ONLY_4X4, "TX_MODE_ONLY_4X4"},149		  {V4L2_VP9_TX_MODE_ALLOW_8X8, "TX_MODE_ALLOW_8X8"},150		  {V4L2_VP9_TX_MODE_ALLOW_16X16, "TX_MODE_ALLOW_16X16"},151		  {V4L2_VP9_TX_MODE_ALLOW_32X32, "TX_MODE_ALLOW_32X32"},152		  {V4L2_VP9_TX_MODE_SELECT, "TX_MODE_SELECT"}),153		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,154				   __entry->h.tx8,155				   sizeof(__entry->h.tx8),156				   false),157		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,158				   __entry->h.tx16,159				   sizeof(__entry->h.tx16),160				   false),161		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,162				   __entry->h.tx32,163				   sizeof(__entry->h.tx32),164				   false),165		  __print_array(__entry->h.skip,166				ARRAY_SIZE(__entry->h.skip),167				sizeof(__entry->h.skip[0])),168		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,169				   __entry->h.inter_mode,170				   sizeof(__entry->h.inter_mode),171				   false),172		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,173				   __entry->h.interp_filter,174				   sizeof(__entry->h.interp_filter),175				   false),176		  __print_array(__entry->h.is_inter,177				ARRAY_SIZE(__entry->h.is_inter),178				sizeof(__entry->h.is_inter[0])),179		  __print_array(__entry->h.comp_mode,180				ARRAY_SIZE(__entry->h.comp_mode),181				sizeof(__entry->h.comp_mode[0])),182		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,183				   __entry->h.single_ref,184				   sizeof(__entry->h.single_ref),185				   false),186		  __print_array(__entry->h.comp_ref,187				ARRAY_SIZE(__entry->h.comp_ref),188				sizeof(__entry->h.comp_ref[0])),189		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,190				   __entry->h.y_mode,191				   sizeof(__entry->h.y_mode),192				   false),193		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,194				   __entry->h.uv_mode,195				   sizeof(__entry->h.uv_mode),196				   false),197		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,198				   __entry->h.partition,199				   sizeof(__entry->h.partition),200				   false)201	)202);203 204DECLARE_EVENT_CLASS(v4l2_ctrl_vp9_compressed_coef_tmpl,205	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),206	TP_ARGS(h),207	TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp9_compressed_hdr, h)),208	TP_fast_assign(__entry->h = *h;),209	TP_printk("\n coef {%s}",210		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,211				   __entry->h.coef,212				   sizeof(__entry->h.coef),213				   false)214	)215);216 217DECLARE_EVENT_CLASS(v4l2_vp9_mv_probs_tmpl,218	TP_PROTO(const struct v4l2_vp9_mv_probs *p),219	TP_ARGS(p),220	TP_STRUCT__entry(__field_struct(struct v4l2_vp9_mv_probs, p)),221	TP_fast_assign(__entry->p = *p;),222	TP_printk("\n joint %s\n"223		  "sign %s\n"224		  "classes {%s}\n"225		  "class0_bit %s\n"226		  "bits {%s}\n"227		  "class0_fr {%s}\n"228		  "fr {%s}\n"229		  "class0_hp %s\n"230		  "hp %s\n",231		  __print_array(__entry->p.joint,232				ARRAY_SIZE(__entry->p.joint),233				sizeof(__entry->p.joint[0])),234		  __print_array(__entry->p.sign,235				ARRAY_SIZE(__entry->p.sign),236				sizeof(__entry->p.sign[0])),237		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,238				   __entry->p.classes,239				   sizeof(__entry->p.classes),240				   false),241		  __print_array(__entry->p.class0_bit,242				ARRAY_SIZE(__entry->p.class0_bit),243				sizeof(__entry->p.class0_bit[0])),244		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,245				   __entry->p.bits,246				   sizeof(__entry->p.bits),247				   false),248		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,249				   __entry->p.class0_fr,250				   sizeof(__entry->p.class0_fr),251				   false),252		  __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1,253				   __entry->p.fr,254				   sizeof(__entry->p.fr),255				   false),256		  __print_array(__entry->p.class0_hp,257				ARRAY_SIZE(__entry->p.class0_hp),258				sizeof(__entry->p.class0_hp[0])),259		  __print_array(__entry->p.hp,260				ARRAY_SIZE(__entry->p.hp),261				sizeof(__entry->p.hp[0]))262	)263);264 265DEFINE_EVENT(v4l2_ctrl_vp9_frame_tmpl, v4l2_ctrl_vp9_frame,266	TP_PROTO(const struct v4l2_ctrl_vp9_frame *f),267	TP_ARGS(f)268);269 270DEFINE_EVENT(v4l2_ctrl_vp9_compressed_hdr_tmpl, v4l2_ctrl_vp9_compressed_hdr,271	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),272	TP_ARGS(h)273);274 275DEFINE_EVENT(v4l2_ctrl_vp9_compressed_coef_tmpl, v4l2_ctrl_vp9_compressed_coeff,276	TP_PROTO(const struct v4l2_ctrl_vp9_compressed_hdr *h),277	TP_ARGS(h)278);279 280 281DEFINE_EVENT(v4l2_vp9_mv_probs_tmpl, v4l2_vp9_mv_probs,282	TP_PROTO(const struct v4l2_vp9_mv_probs *p),283	TP_ARGS(p)284);285 286#endif287 288#undef TRACE_INCLUDE_PATH289#undef TRACE_INCLUDE_FILE290#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl291#define TRACE_INCLUDE_FILE visl-trace-vp9292#include <trace/define_trace.h>293