From patchwork Fri Dec 1 00:46:32 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Deborah Brouwer X-Patchwork-Id: 13475234 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="lsjG8VY0" Received: from madras.collabora.co.uk (madras.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e5ab]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1F69CD7D for ; Thu, 30 Nov 2023 16:47:06 -0800 (PST) Received: from mz550.lan (ec2-34-240-57-77.eu-west-1.compute.amazonaws.com [34.240.57.77]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: dbrouwer) by madras.collabora.co.uk (Postfix) with ESMTPSA id 27D0F6607386; Fri, 1 Dec 2023 00:47:03 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1701391625; bh=qkrn/uwMhQpYDmsD+sudypTb9zuOZoTsNYc7jo6Fm5I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lsjG8VY0p1CS1h/gNvMPjHdQXntkuSKkJrLNLYoO3CNri8JLXBBD5xJiOBt+EGu8v cf1/y1aOloEvUJa0D/K5b1TXLn6OPlsB1zfDYjJek2WBrNCkG/PNUKbi45P8xceC1Y hZXm34xdqVT7L6ScZSYE1/Hgvs3jA7osaTon1TVKUyRzEgQGJk5j3/QUXZUc0ydNAz hUg86pv0A0hHjxFBEK9W9rZEHg7tHXAcrEdJal3hwxpW3l8093YUq8RY5ONa08gLaM mPtaXkh1GmkM3/joLthjdZvJxqMRuZJJxhskO/+NSMmS6PSwca2+zpz51TkOVg8CAf cgDm/n/dB8TYg== From: Deborah Brouwer To: linux-media@vger.kernel.org Cc: hverkuil-cisco@xs4all.nl, Deborah Brouwer Subject: [PATCH 4/6] v4l2-tracer: add re/tracing for AV1 controls Date: Thu, 30 Nov 2023 16:46:32 -0800 Message-ID: <83f2b55175f869f1e992d01938c2bdd3b5385ab0.1701390439.git.deborah.brouwer@collabora.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Hook up the existing autogenerated AV1 tracing and retracing functions so that they are called by the tracer and retracer. Signed-off-by: Deborah Brouwer --- utils/v4l2-tracer/retrace.cpp | 12 ++++++++++++ utils/v4l2-tracer/trace.cpp | 12 ++++++++++++ 2 files changed, 24 insertions(+) diff --git a/utils/v4l2-tracer/retrace.cpp b/utils/v4l2-tracer/retrace.cpp index 03fe13f8..b8a1c8fb 100644 --- a/utils/v4l2-tracer/retrace.cpp +++ b/utils/v4l2-tracer/retrace.cpp @@ -876,6 +876,18 @@ struct v4l2_ext_control *retrace_v4l2_ext_control(json_object *parent_obj, int c case V4L2_CID_STATELESS_MPEG2_QUANTISATION: p->ptr = retrace_v4l2_ctrl_mpeg2_quantisation_gen(v4l2_ext_control_obj); break; + case V4L2_CID_STATELESS_AV1_SEQUENCE: + p->ptr = retrace_v4l2_ctrl_av1_sequence_gen(v4l2_ext_control_obj); + break; + case V4L2_CID_STATELESS_AV1_TILE_GROUP_ENTRY: + p->ptr = retrace_v4l2_ctrl_av1_tile_group_entry_gen(v4l2_ext_control_obj); + break; + case V4L2_CID_STATELESS_AV1_FRAME: + p->ptr = retrace_v4l2_ctrl_av1_frame_gen(v4l2_ext_control_obj); + break; + case V4L2_CID_STATELESS_AV1_FILM_GRAIN: + p->ptr = retrace_v4l2_ctrl_av1_film_grain_gen(v4l2_ext_control_obj); + break; default: line_info("\n\tWarning: cannot retrace control: %s", val2s(p->id, control_val_def).c_str()); diff --git a/utils/v4l2-tracer/trace.cpp b/utils/v4l2-tracer/trace.cpp index c4fc1584..996fb043 100644 --- a/utils/v4l2-tracer/trace.cpp +++ b/utils/v4l2-tracer/trace.cpp @@ -412,6 +412,18 @@ void trace_v4l2_ext_control(void *arg, json_object *parent_obj, std::string key_ case V4L2_CID_PIXEL_RATE: json_object_object_add(v4l2_ext_control_obj, "value64", json_object_new_int64(p->value64)); break; + case V4L2_CID_STATELESS_AV1_SEQUENCE: + trace_v4l2_ctrl_av1_sequence_gen(p->p_av1_sequence, v4l2_ext_control_obj); + break; + case V4L2_CID_STATELESS_AV1_TILE_GROUP_ENTRY: + trace_v4l2_ctrl_av1_tile_group_entry_gen(p->p_av1_tile_group_entry, v4l2_ext_control_obj); + break; + case V4L2_CID_STATELESS_AV1_FRAME: + trace_v4l2_ctrl_av1_frame_gen(p->p_av1_frame, v4l2_ext_control_obj); + break; + case V4L2_CID_STATELESS_AV1_FILM_GRAIN: + trace_v4l2_ctrl_av1_film_grain_gen(p->p_av1_film_grain, v4l2_ext_control_obj); + break; default: if (p->size) line_info("\n\tWarning: cannot trace control: %s", val2s(p->id, control_val_def).c_str());