Received: by 2002:a05:6a10:7420:0:0:0:0 with SMTP id hk32csp190002pxb; Tue, 15 Feb 2022 11:04:38 -0800 (PST) X-Google-Smtp-Source: ABdhPJyzs+PNI8mTMqqrk/U6QLNfNRiFwT3Ysjz0yAEo1Kn+SLoCy00ar89aEiT4oSRyt+dwezIX X-Received: by 2002:a17:907:6e8e:: with SMTP id sh14mr456087ejc.152.1644951878605; Tue, 15 Feb 2022 11:04:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644951878; cv=none; d=google.com; s=arc-20160816; b=ypbUVEhsemtikzPGJ41yH26eedMkNkFDbOBuaQir+UvBpoa/E1OnYyQUuN7LtGKsjj 7izj94YyjQw1dSx78s9oTMscbbc6OpYQQ7BreHGx7shss/0PAT4+PBgQwN6hYyQGSoD4 AFK33MkkntluiNh8yVULBtRpEa7mJfvy2N5uVusJAhOhz6gp5HJFNzP3Dji4iNAn7GlT jOhrBpSFpshD1lgJJove3tcunpQ1XYzAoWyIBSayIHl78oxFL9jndht7DZZD7YaVz3xm faNaVlE4zUpgKBWhNHoCDbHZuCHuqDrrfyn68p+8MM/ADu0FW5RBxnOMFeS6UznwJ/cC qmiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=yDAQVQoZR1cxD76O/hux9jvDvtVEPGl6SU0ai33bqr4=; b=cs9fqwLyqXITAiClcXmAgp1c01NFAbQg4mgilNBEArYNyL00oQe5qN287X5dcCLvmg h+l0beyv2V2plLPmZVIKTVWkq6cOkQlmWTKHPp9qdVZisLXSOJf3pwv9TMrg4Tw+ujb/ YISsUSMIA2BftQULCa0e90THTl/q7RqYBBe5ICGMJA+MyfjF820T3QxLIUYKtT1hmh3L sN30ZJfIyg26iy2S0JUB2NsTVIJLdXCx+FFnhtq38WTrj/gkuSfRge5M1EHBJcXQ+5TI W9huY9kOfEwhud6OEetpUdFrBHj4v0Ebx7yIV6D/0fZEnkjdM5n8LTVMUHM1CfGlcM52 ae/A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b="X4q/A1Jq"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=collabora.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ho31si25176575ejc.635.2022.02.15.11.04.14; Tue, 15 Feb 2022 11:04:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b="X4q/A1Jq"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236829AbiBOLBZ (ORCPT + 99 others); Tue, 15 Feb 2022 06:01:25 -0500 Received: from mxb-00190b01.gslb.pphosted.com ([23.128.96.19]:37704 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232569AbiBOLBX (ORCPT ); Tue, 15 Feb 2022 06:01:23 -0500 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [46.235.227.227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0637AF9566; Tue, 15 Feb 2022 03:01:14 -0800 (PST) Received: from benjamin-XPS-13-9310.. (unknown [IPv6:2a01:e0a:120:3210:6d7b:ae43:289b:7e7c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: benjamin.gaignard) by bhuna.collabora.co.uk (Postfix) with ESMTPSA id 31C8E1F444CE; Tue, 15 Feb 2022 11:01:12 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1644922872; bh=gsNBuzdzzks7myB40+JYRtDgIY/SWyjCVVU2wOm0oU8=; h=From:To:Cc:Subject:Date:From; b=X4q/A1JquTkGBwGJh+GJwt0ouraY9iqgypV3DEBEMYfsDUltHT97Ws2nH9Bi/iFCX cQ0dHTJo+H1uAbXmbhsO2H9eqw+rs+FJsarFyo6TS3Q6VUjucae2B2LDMmTge5bouv kO3Tdue04FlGSGP4TV+na5bhCntlEkSr2pATtHHdBtXNgPYjq5NKvdT3JHNMztTzEY ivTJL6dfBCGBMl9OvQW4WgPxd/vw5u5yAxL5YOgxl61qyB155R5taqCW42RqVZwXYY dWkNE+2coTh4EHvIGzIT5HW4erFZMhUP1k4juRVm+ym9048QKDg/aAc2A9P8rwZhxs ep66xzCq+Ph5A== From: Benjamin Gaignard To: mchehab@kernel.org, ezequiel@vanguardiasur.com.ar, p.zabel@pengutronix.de, gregkh@linuxfoundation.org, mripard@kernel.org, paul.kocialkowski@bootlin.com, wens@csie.org, jernej.skrabec@gmail.com, hverkuil-cisco@xs4all.nl, jonas@kwiboo.se, nicolas@ndufresne.ca Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-sunxi@lists.linux.dev, kernel@collabora.com, knaerzche@gmail.com, jc@kynesim.co.uk, Benjamin Gaignard Subject: [RFC v2 0/8] Move HEVC stateless controls out of staging Date: Tue, 15 Feb 2022 12:00:55 +0100 Message-Id: <20220215110103.241297-1-benjamin.gaignard@collabora.com> X-Mailer: git-send-email 2.32.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series aims to make HEVC uapi stable and usable for hardware decoder. HEVC uapi is used by 2 mainlined drivers (Cedrus and Hantro) and 2 out of the tree drivers (rkvdec and RPI). The 3 first patches are from Hans to implement v4l2 dynamic control feature which is need by patch 7 for V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSET definition. Patch 4 move the existing uapi to stable, including definitions renaming and CID number change to fit with v4l2 naming. Patches 5 and 7 add fields needed for rkvdec and RPI decoders. Patches 6 is cleaning up the uapi of useless field. Patches 8 change one field description and name to define offset by bytes rather than by bits Benjamin Benjamin Gaignard (5): media: uapi: Move HEVC stateless controls out of staging media: uapi: Add fields needed for RKVDEC driver media: uapi: Remove bit_size field from v4l2_ctrl_hevc_slice_params media: uapi: Add V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSET control media: uapi: Change data_bit_offset definition Hans Verkuil (3): videodev2.h: add V4L2_CTRL_FLAG_DYNAMIC_ARRAY v4l2-ctrls: add support for dynamically allocated arrays. vivid: add dynamic array test control .../userspace-api/media/drivers/hantro.rst | 5 - .../media/v4l/ext-ctrls-codec.rst | 58 ++-- .../media/v4l/vidioc-queryctrl.rst | 8 + .../media/test-drivers/vivid/vivid-ctrls.c | 15 ++ drivers/media/v4l2-core/v4l2-ctrls-api.c | 103 ++++++-- drivers/media/v4l2-core/v4l2-ctrls-core.c | 182 ++++++++++--- drivers/media/v4l2-core/v4l2-ctrls-defs.c | 32 +-- drivers/media/v4l2-core/v4l2-ctrls-priv.h | 3 +- drivers/media/v4l2-core/v4l2-ctrls-request.c | 13 +- drivers/staging/media/hantro/hantro_drv.c | 27 +- drivers/staging/media/hantro/hantro_hevc.c | 8 +- drivers/staging/media/sunxi/cedrus/cedrus.c | 24 +- .../staging/media/sunxi/cedrus/cedrus_dec.c | 10 +- .../staging/media/sunxi/cedrus/cedrus_h265.c | 13 +- include/linux/hantro-media.h | 17 ++ include/media/hevc-ctrls.h | 250 ------------------ include/media/v4l2-ctrls.h | 48 +++- include/uapi/linux/v4l2-controls.h | 224 ++++++++++++++++ include/uapi/linux/videodev2.h | 8 + 19 files changed, 640 insertions(+), 408 deletions(-) create mode 100644 include/linux/hantro-media.h delete mode 100644 include/media/hevc-ctrls.h -- 2.32.0