162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci#if !defined(_VISL_TRACE_VP8_H_) || defined(TRACE_HEADER_MULTI_READ) 362306a36Sopenharmony_ci#define _VISL_TRACE_VP8_H_ 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci#include <linux/tracepoint.h> 662306a36Sopenharmony_ci#include "visl.h" 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#undef TRACE_SYSTEM 962306a36Sopenharmony_ci#define TRACE_SYSTEM visl_vp8_controls 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ciDECLARE_EVENT_CLASS(v4l2_ctrl_vp8_entropy_tmpl, 1262306a36Sopenharmony_ci TP_PROTO(const struct v4l2_ctrl_vp8_frame *f), 1362306a36Sopenharmony_ci TP_ARGS(f), 1462306a36Sopenharmony_ci TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp8_frame, f)), 1562306a36Sopenharmony_ci TP_fast_assign(__entry->f = *f;), 1662306a36Sopenharmony_ci TP_printk("\nentropy.coeff_probs {%s}\n" 1762306a36Sopenharmony_ci "entropy.y_mode_probs %s\n" 1862306a36Sopenharmony_ci "entropy.uv_mode_probs %s\n" 1962306a36Sopenharmony_ci "entropy.mv_probs {%s}", 2062306a36Sopenharmony_ci __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1, 2162306a36Sopenharmony_ci __entry->f.entropy.coeff_probs, 2262306a36Sopenharmony_ci sizeof(__entry->f.entropy.coeff_probs), 2362306a36Sopenharmony_ci false), 2462306a36Sopenharmony_ci __print_array(__entry->f.entropy.y_mode_probs, 2562306a36Sopenharmony_ci ARRAY_SIZE(__entry->f.entropy.y_mode_probs), 2662306a36Sopenharmony_ci sizeof(__entry->f.entropy.y_mode_probs[0])), 2762306a36Sopenharmony_ci __print_array(__entry->f.entropy.uv_mode_probs, 2862306a36Sopenharmony_ci ARRAY_SIZE(__entry->f.entropy.uv_mode_probs), 2962306a36Sopenharmony_ci sizeof(__entry->f.entropy.uv_mode_probs[0])), 3062306a36Sopenharmony_ci __print_hex_dump("", DUMP_PREFIX_NONE, 32, 1, 3162306a36Sopenharmony_ci __entry->f.entropy.mv_probs, 3262306a36Sopenharmony_ci sizeof(__entry->f.entropy.mv_probs), 3362306a36Sopenharmony_ci false) 3462306a36Sopenharmony_ci ) 3562306a36Sopenharmony_ci) 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ciDECLARE_EVENT_CLASS(v4l2_ctrl_vp8_frame_tmpl, 3862306a36Sopenharmony_ci TP_PROTO(const struct v4l2_ctrl_vp8_frame *f), 3962306a36Sopenharmony_ci TP_ARGS(f), 4062306a36Sopenharmony_ci TP_STRUCT__entry(__field_struct(struct v4l2_ctrl_vp8_frame, f)), 4162306a36Sopenharmony_ci TP_fast_assign(__entry->f = *f;), 4262306a36Sopenharmony_ci TP_printk("\nsegment.quant_update %s\n" 4362306a36Sopenharmony_ci "segment.lf_update %s\n" 4462306a36Sopenharmony_ci "segment.segment_probs %s\n" 4562306a36Sopenharmony_ci "segment.flags %s\n" 4662306a36Sopenharmony_ci "lf.ref_frm_delta %s\n" 4762306a36Sopenharmony_ci "lf.mb_mode_delta %s\n" 4862306a36Sopenharmony_ci "lf.sharpness_level %u\n" 4962306a36Sopenharmony_ci "lf.level %u\n" 5062306a36Sopenharmony_ci "lf.flags %s\n" 5162306a36Sopenharmony_ci "quant.y_ac_qi %u\n" 5262306a36Sopenharmony_ci "quant.y_dc_delta %d\n" 5362306a36Sopenharmony_ci "quant.y2_dc_delta %d\n" 5462306a36Sopenharmony_ci "quant.y2_ac_delta %d\n" 5562306a36Sopenharmony_ci "quant.uv_dc_delta %d\n" 5662306a36Sopenharmony_ci "quant.uv_ac_delta %d\n" 5762306a36Sopenharmony_ci "coder_state.range %u\n" 5862306a36Sopenharmony_ci "coder_state.value %u\n" 5962306a36Sopenharmony_ci "coder_state.bit_count %u\n" 6062306a36Sopenharmony_ci "width %u\n" 6162306a36Sopenharmony_ci "height %u\n" 6262306a36Sopenharmony_ci "horizontal_scale %u\n" 6362306a36Sopenharmony_ci "vertical_scale %u\n" 6462306a36Sopenharmony_ci "version %u\n" 6562306a36Sopenharmony_ci "prob_skip_false %u\n" 6662306a36Sopenharmony_ci "prob_intra %u\n" 6762306a36Sopenharmony_ci "prob_last %u\n" 6862306a36Sopenharmony_ci "prob_gf %u\n" 6962306a36Sopenharmony_ci "num_dct_parts %u\n" 7062306a36Sopenharmony_ci "first_part_size %u\n" 7162306a36Sopenharmony_ci "first_part_header_bits %u\n" 7262306a36Sopenharmony_ci "dct_part_sizes %s\n" 7362306a36Sopenharmony_ci "last_frame_ts %llu\n" 7462306a36Sopenharmony_ci "golden_frame_ts %llu\n" 7562306a36Sopenharmony_ci "alt_frame_ts %llu\n" 7662306a36Sopenharmony_ci "flags %s", 7762306a36Sopenharmony_ci __print_array(__entry->f.segment.quant_update, 7862306a36Sopenharmony_ci ARRAY_SIZE(__entry->f.segment.quant_update), 7962306a36Sopenharmony_ci sizeof(__entry->f.segment.quant_update[0])), 8062306a36Sopenharmony_ci __print_array(__entry->f.segment.lf_update, 8162306a36Sopenharmony_ci ARRAY_SIZE(__entry->f.segment.lf_update), 8262306a36Sopenharmony_ci sizeof(__entry->f.segment.lf_update[0])), 8362306a36Sopenharmony_ci __print_array(__entry->f.segment.segment_probs, 8462306a36Sopenharmony_ci ARRAY_SIZE(__entry->f.segment.segment_probs), 8562306a36Sopenharmony_ci sizeof(__entry->f.segment.segment_probs[0])), 8662306a36Sopenharmony_ci __print_flags(__entry->f.segment.flags, "|", 8762306a36Sopenharmony_ci {V4L2_VP8_SEGMENT_FLAG_ENABLED, "SEGMENT_ENABLED"}, 8862306a36Sopenharmony_ci {V4L2_VP8_SEGMENT_FLAG_UPDATE_MAP, "SEGMENT_UPDATE_MAP"}, 8962306a36Sopenharmony_ci {V4L2_VP8_SEGMENT_FLAG_UPDATE_FEATURE_DATA, "SEGMENT_UPDATE_FEATURE_DATA"}, 9062306a36Sopenharmony_ci {V4L2_VP8_SEGMENT_FLAG_DELTA_VALUE_MODE, "SEGMENT_DELTA_VALUE_MODE"}), 9162306a36Sopenharmony_ci __print_array(__entry->f.lf.ref_frm_delta, 9262306a36Sopenharmony_ci ARRAY_SIZE(__entry->f.lf.ref_frm_delta), 9362306a36Sopenharmony_ci sizeof(__entry->f.lf.ref_frm_delta[0])), 9462306a36Sopenharmony_ci __print_array(__entry->f.lf.mb_mode_delta, 9562306a36Sopenharmony_ci ARRAY_SIZE(__entry->f.lf.mb_mode_delta), 9662306a36Sopenharmony_ci sizeof(__entry->f.lf.mb_mode_delta[0])), 9762306a36Sopenharmony_ci __entry->f.lf.sharpness_level, 9862306a36Sopenharmony_ci __entry->f.lf.level, 9962306a36Sopenharmony_ci __print_flags(__entry->f.lf.flags, "|", 10062306a36Sopenharmony_ci {V4L2_VP8_LF_ADJ_ENABLE, "LF_ADJ_ENABLED"}, 10162306a36Sopenharmony_ci {V4L2_VP8_LF_DELTA_UPDATE, "LF_DELTA_UPDATE"}, 10262306a36Sopenharmony_ci {V4L2_VP8_LF_FILTER_TYPE_SIMPLE, "LF_FILTER_TYPE_SIMPLE"}), 10362306a36Sopenharmony_ci __entry->f.quant.y_ac_qi, 10462306a36Sopenharmony_ci __entry->f.quant.y_dc_delta, 10562306a36Sopenharmony_ci __entry->f.quant.y2_dc_delta, 10662306a36Sopenharmony_ci __entry->f.quant.y2_ac_delta, 10762306a36Sopenharmony_ci __entry->f.quant.uv_dc_delta, 10862306a36Sopenharmony_ci __entry->f.quant.uv_ac_delta, 10962306a36Sopenharmony_ci __entry->f.coder_state.range, 11062306a36Sopenharmony_ci __entry->f.coder_state.value, 11162306a36Sopenharmony_ci __entry->f.coder_state.bit_count, 11262306a36Sopenharmony_ci __entry->f.width, 11362306a36Sopenharmony_ci __entry->f.height, 11462306a36Sopenharmony_ci __entry->f.horizontal_scale, 11562306a36Sopenharmony_ci __entry->f.vertical_scale, 11662306a36Sopenharmony_ci __entry->f.version, 11762306a36Sopenharmony_ci __entry->f.prob_skip_false, 11862306a36Sopenharmony_ci __entry->f.prob_intra, 11962306a36Sopenharmony_ci __entry->f.prob_last, 12062306a36Sopenharmony_ci __entry->f.prob_gf, 12162306a36Sopenharmony_ci __entry->f.num_dct_parts, 12262306a36Sopenharmony_ci __entry->f.first_part_size, 12362306a36Sopenharmony_ci __entry->f.first_part_header_bits, 12462306a36Sopenharmony_ci __print_array(__entry->f.dct_part_sizes, 12562306a36Sopenharmony_ci ARRAY_SIZE(__entry->f.dct_part_sizes), 12662306a36Sopenharmony_ci sizeof(__entry->f.dct_part_sizes[0])), 12762306a36Sopenharmony_ci __entry->f.last_frame_ts, 12862306a36Sopenharmony_ci __entry->f.golden_frame_ts, 12962306a36Sopenharmony_ci __entry->f.alt_frame_ts, 13062306a36Sopenharmony_ci __print_flags(__entry->f.flags, "|", 13162306a36Sopenharmony_ci {V4L2_VP8_FRAME_FLAG_KEY_FRAME, "KEY_FRAME"}, 13262306a36Sopenharmony_ci {V4L2_VP8_FRAME_FLAG_EXPERIMENTAL, "EXPERIMENTAL"}, 13362306a36Sopenharmony_ci {V4L2_VP8_FRAME_FLAG_SHOW_FRAME, "SHOW_FRAME"}, 13462306a36Sopenharmony_ci {V4L2_VP8_FRAME_FLAG_MB_NO_SKIP_COEFF, "MB_NO_SKIP_COEFF"}, 13562306a36Sopenharmony_ci {V4L2_VP8_FRAME_FLAG_SIGN_BIAS_GOLDEN, "SIGN_BIAS_GOLDEN"}, 13662306a36Sopenharmony_ci {V4L2_VP8_FRAME_FLAG_SIGN_BIAS_ALT, "SIGN_BIAS_ALT"}) 13762306a36Sopenharmony_ci ) 13862306a36Sopenharmony_ci); 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ciDEFINE_EVENT(v4l2_ctrl_vp8_frame_tmpl, v4l2_ctrl_vp8_frame, 14162306a36Sopenharmony_ci TP_PROTO(const struct v4l2_ctrl_vp8_frame *f), 14262306a36Sopenharmony_ci TP_ARGS(f) 14362306a36Sopenharmony_ci); 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_ciDEFINE_EVENT(v4l2_ctrl_vp8_entropy_tmpl, v4l2_ctrl_vp8_entropy, 14662306a36Sopenharmony_ci TP_PROTO(const struct v4l2_ctrl_vp8_frame *f), 14762306a36Sopenharmony_ci TP_ARGS(f) 14862306a36Sopenharmony_ci); 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci#endif 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ci#undef TRACE_INCLUDE_PATH 15362306a36Sopenharmony_ci#undef TRACE_INCLUDE_FILE 15462306a36Sopenharmony_ci#define TRACE_INCLUDE_PATH ../../drivers/media/test-drivers/visl 15562306a36Sopenharmony_ci#define TRACE_INCLUDE_FILE visl-trace-vp8 15662306a36Sopenharmony_ci#include <trace/define_trace.h> 157