[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b81b6e6a-10b7-43eb-b857-6c0d2636427e@nxp.com>
Date: Wed, 4 Feb 2026 14:31:47 +0100
From: Antoine Bouyer <antoine.bouyer@....com>
To: Jacopo Mondi <jacopo.mondi@...asonboard.com>
Cc: julien.vuillaumier@....com, alexi.birlinger@....com,
daniel.baluta@....com, peng.fan@....com, frank.li@....com,
laurent.pinchart@...asonboard.com, mchehab@...nel.org, robh@...nel.org,
krzk+dt@...nel.org, conor+dt@...nel.org, shawnguo@...nel.org,
s.hauer@...gutronix.de, kernel@...gutronix.de, festevam@...il.com,
linux-kernel@...r.kernel.org, linux-media@...r.kernel.org,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org
Subject: Re: Re: [RFC v1 07/11] media: Add meta formats supported by NXP
neoisp driver
Hi Jacopo
Le 03/02/2026 à 18:11, Jacopo Mondi a écrit :
>
> Hi Antoine
>
> On Fri, Jan 23, 2026 at 09:09:34AM +0100, Antoine Bouyer wrote:
>> This patch adds new v4l2 meta formats definitions and descriptions used by
>> neoisp driver for the parameters and statistics buffers:
>> - `V4L2_META_FMT_NEO_ISP_PARAMS` used for the legacy fixed-size
>> parameters buffer structure.
>> - `V4L2_META_FMT_NEO_ISP_EXT_PARAMS` used for the generic v4l2-isp
>> extensible parameters structure, supporting a non-fixed-size buffer and
>> changeable ISP configuration blocks.
>> - `V4L2_META_FMT_NEO_ISP_STATS` used for the legacy fixed-size statistics
>> buffer structure.
>> - `V4L2_META_FMT_NEO_ISP_EXT_STATS` used for the generic v4l2-isp
>> extensible statistics structure, supporting a non-fixed-size buffer
>> and changeable ISP statistics blocks.
>
> Uh interesting, you have existing userspace that needs legacy formats ?
Yes we do have some available here (version with extensible formats will
be the next one):
https://github.com/nxp-imx/libcamera
Not in mainline, thought.
BR
Antoine
>
>>
>> Signed-off-by: Antoine Bouyer <antoine.bouyer@....com>
>> ---
>> drivers/media/v4l2-core/v4l2-ioctl.c | 4 ++++
>> include/uapi/linux/videodev2.h | 6 ++++++
>> 2 files changed, 10 insertions(+)
>>
>> diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c
>> index 37d33d4a363d..c797cf11be38 100644
>> --- a/drivers/media/v4l2-core/v4l2-ioctl.c
>> +++ b/drivers/media/v4l2-core/v4l2-ioctl.c
>> @@ -1471,6 +1471,10 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc *fmt)
>> case V4L2_META_FMT_C3ISP_STATS: descr = "Amlogic C3 ISP Statistics"; break;
>> case V4L2_META_FMT_MALI_C55_PARAMS: descr = "ARM Mali-C55 ISP Parameters"; break;
>> case V4L2_META_FMT_MALI_C55_STATS: descr = "ARM Mali-C55 ISP 3A Statistics"; break;
>> + case V4L2_META_FMT_NEO_ISP_PARAMS: descr = "NXP Neo ISP 3A Parameters"; break;
>> + case V4L2_META_FMT_NEO_ISP_EXT_PARAMS: descr = "NXP Neo ISP ext 3A Parameters"; break;
>> + case V4L2_META_FMT_NEO_ISP_STATS: descr = "NXP Neo ISP 3A Statistics"; break;
>> + case V4L2_META_FMT_NEO_ISP_EXT_STATS: descr = "NXP Neo ISP ext 3A Statistics"; break;
>> case V4L2_PIX_FMT_NV12_8L128: descr = "NV12 (8x128 Linear)"; break;
>> case V4L2_PIX_FMT_NV12M_8L128: descr = "NV12M (8x128 Linear)"; break;
>> case V4L2_PIX_FMT_NV12_10BE_8L128: descr = "10-bit NV12 (8x128 Linear, BE)"; break;
>> diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
>> index 848e86617d5c..5f4992452c66 100644
>> --- a/include/uapi/linux/videodev2.h
>> +++ b/include/uapi/linux/videodev2.h
>> @@ -889,6 +889,12 @@ struct v4l2_pix_format {
>> #define V4L2_META_FMT_MALI_C55_PARAMS v4l2_fourcc('C', '5', '5', 'P') /* ARM Mali-C55 Parameters */
>> #define V4L2_META_FMT_MALI_C55_STATS v4l2_fourcc('C', '5', '5', 'S') /* ARM Mali-C55 3A Statistics */
>>
>> +/* Vendor specific - used for NXP NEOISP sub-system */
>> +#define V4L2_META_FMT_NEO_ISP_PARAMS v4l2_fourcc('N', 'N', 'I', 'P') /* NXP NEOISP Parameters */
>> +#define V4L2_META_FMT_NEO_ISP_EXT_PARAMS v4l2_fourcc('N', 'N', 'E', 'P') /* NXP NEOISP Ext Params */
>> +#define V4L2_META_FMT_NEO_ISP_STATS v4l2_fourcc('N', 'N', 'I', 'S') /* NXP NEOISP Statistics */
>> +#define V4L2_META_FMT_NEO_ISP_EXT_STATS v4l2_fourcc('N', 'N', 'E', 'S') /* NXP NEOISP Ext Stats */
>> +
>> #ifdef __KERNEL__
>> /*
>> * Line-based metadata formats. Remember to update v4l_fill_fmtdesc() when
>> --
>> 2.52.0
>>
>>
Powered by blists - more mailing lists