From: Keke Li <keke.li@amlogic.com>
To: Jacopo Mondi <jacopo.mondi@ideasonboard.com>,
Dafna Hirschfeld <dafna@fastmail.com>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Heiko Stuebner <heiko@sntech.de>,
Dan Scally <dan.scally@ideasonboard.com>,
Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: linux-kernel@vger.kernel.org, linux-media@vger.kernel.org,
linux-rockchip@lists.infradead.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 0/8] media: Introduce V4L2 extensible parameters
Date: Thu, 10 Jul 2025 10:19:26 +0800 [thread overview]
Message-ID: <fd518fa2-be83-4b51-a5a7-d3e7d0aac08d@amlogic.com> (raw)
In-Reply-To: <20250708-extensible-parameters-validation-v1-0-9fc27c9c728c@ideasonboard.com>
Hi Jacopo
On 2025/7/8 18:40, Jacopo Mondi wrote:
> [ EXTERNAL EMAIL ]
>
> Extensible parameters meta formats have been introduced in the Linux
> kernel v6.12 initially to support different revision of the RkISP1 ISP
> implemented in different SoC. In order to avoid breaking userspace
> everytime an ISP configuration block is added or modified in the uAPI
> these new formats, which are versionated and extensible by their
> definition have been introduced.
>
> See for reference:
> e9d05e9d5db1 ("media: uapi: rkisp1-config: Add extensible params format")
> 6c53a7b68c5d ("media: rkisp1: Implement extensible params support")
>
> The Amlogic C3 ISP driver followed shortly, introducing an extensible
> format for the ISP configuration:
>
> 6d406187ebc0 ("media: uapi: Add stats info and parameters buffer for C3 ISP")
>
> with a very similar, if not identical, implementation of the routines to
> validate and handle the ISP configuration in the ISP driver in the
> c3-isp-params.c file.
>
> fb2e135208f3 ("media: platform: Add C3 ISP driver")
>
> With the recent upstreaming attempt of the Mali C55 ISP driver from Dan,
> a third user of extensible parameters is going to be itroduced in the
> kernel, duplicating again in the driver the procedure for validating and
> handling the ISP configuration blocks
>
> https://patchwork.linuxtv.org/project/linux-media/patch/20250624-c55-v10-15-54f3d4196990@ideasonboard.com/
>
> To avoid duplicating again the validation routines and common types
> definition, this series introduces v4l2-params.c/.h for the kAPI
> and v4l2-extensible-params.h for the uAPI and re-organize the RkISP1
> and Amlogic C3 drivers to use the common types and the helper validation
> routines.
>
> If the here proposed approach is accepted, I propose to rebase the Mali
> C55 driver on top of this series, to use the new common types and
> helpers.
>
> I have been able to test this on RkISP1 but not on C3.
> Keke: would you be able to give this series a try and see what happens ?
I have tested this patch series on C3, the result is OK.
Thanks.
>
> Media CI pipeline:
> https://gitlab.freedesktop.org/linux-media/users/jmondi/-/pipelines/1465950
>
> Thanks
> j
>
> Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> ---
> Jacopo Mondi (8):
> media: uapi: Introduce V4L2 extensible params
> media: uapi: Convert RkISP1 to V4L2 extensible params
> media: uapi: Convert Amlogic C3 to V4L2 extensible params
> media: Documentation: uapi: Add V4L2 extensible parameters
> media: v4l2-common: Introduce v4l2-params.c
> media: rkisp1: Use v4l2-params for validation
> media: amlogic-c3: Use v4l2-params for validation
> media: Documentation: kapi: Add v4l2 extensible parameters
>
> Documentation/driver-api/media/v4l2-core.rst | 1 +
> Documentation/driver-api/media/v4l2-params.rst | 5 +
> .../media/v4l/extensible-parameters.rst | 89 +++++
> .../userspace-api/media/v4l/meta-formats.rst | 1 +
> MAINTAINERS | 10 +
> .../media/platform/amlogic/c3/isp/c3-isp-params.c | 272 ++++++---------
> .../media/platform/rockchip/rkisp1/rkisp1-params.c | 364 +++++++++------------
> drivers/media/v4l2-core/Makefile | 3 +-
> drivers/media/v4l2-core/v4l2-params.c | 106 ++++++
> include/media/v4l2-params.h | 166 ++++++++++
> include/uapi/linux/media/amlogic/c3-isp-config.h | 45 +--
> include/uapi/linux/media/v4l2-extensible-params.h | 106 ++++++
> include/uapi/linux/rkisp1-config.h | 60 +---
> 13 files changed, 775 insertions(+), 453 deletions(-)
> ---
> base-commit: a8598c7de1bcd94461ca54c972efa9b4ea501fb9
> change-id: 20250701-extensible-parameters-validation-c831f7f5cc0b
>
> Best regards,
> --
> Jacopo Mondi <jacopo.mondi@ideasonboard.com>
>
prev parent reply other threads:[~2025-07-10 2:19 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-08 10:40 [PATCH 0/8] media: Introduce V4L2 extensible parameters Jacopo Mondi
2025-07-08 10:40 ` [PATCH 1/8] media: uapi: Introduce V4L2 extensible params Jacopo Mondi
2025-07-09 5:59 ` kernel test robot
2025-07-09 11:33 ` Dan Scally
2025-07-09 11:53 ` Jacopo Mondi
2025-07-09 13:18 ` Dan Scally
2025-07-10 7:15 ` Jacopo Mondi
2025-07-10 9:10 ` Jacopo Mondi
2025-07-09 18:59 ` Nicolas Dufresne
2025-07-08 10:40 ` [PATCH 2/8] media: uapi: Convert RkISP1 to " Jacopo Mondi
2025-07-09 10:22 ` kernel test robot
2025-07-08 10:40 ` [PATCH 3/8] media: uapi: Convert Amlogic C3 " Jacopo Mondi
2025-07-10 2:32 ` Keke Li
2025-07-10 6:44 ` Jacopo Mondi
2025-07-10 6:59 ` Keke Li
2025-07-08 10:40 ` [PATCH 4/8] media: Documentation: uapi: Add V4L2 extensible parameters Jacopo Mondi
2025-07-08 10:40 ` [PATCH 5/8] media: v4l2-common: Introduce v4l2-params.c Jacopo Mondi
2025-07-09 6:20 ` kernel test robot
2025-07-10 12:42 ` Dan Scally
2025-07-10 13:04 ` Jacopo Mondi
2025-07-08 10:40 ` [PATCH 6/8] media: rkisp1: Use v4l2-params for validation Jacopo Mondi
2025-07-09 15:09 ` Dan Scally
2025-07-08 10:40 ` [PATCH 7/8] media: amlogic-c3: " Jacopo Mondi
2025-07-10 7:13 ` Keke Li
2025-07-08 10:40 ` [PATCH 8/8] media: Documentation: kapi: Add v4l2 extensible parameters Jacopo Mondi
2025-07-09 14:59 ` Dan Scally
2025-07-10 2:19 ` Keke Li [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=fd518fa2-be83-4b51-a5a7-d3e7d0aac08d@amlogic.com \
--to=keke.li@amlogic.com \
--cc=dafna@fastmail.com \
--cc=dan.scally@ideasonboard.com \
--cc=heiko@sntech.de \
--cc=jacopo.mondi@ideasonboard.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=mchehab@kernel.org \
--cc=sakari.ailus@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).