From: Sakari Ailus <sakari.ailus@linux.intel.com>
To: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Cc: linux-media@vger.kernel.org, hans@jjverkuil.nl,
laurent.pinchart@ideasonboard.com,
Prabhakar <prabhakar.csengg@gmail.com>,
"Kate Hsuan" <hpa@redhat.com>,
"Alexander Shiyan" <eagle.alexander923@gmail.com>,
"Dave Stevenson" <dave.stevenson@raspberrypi.com>,
"Tommaso Merciai" <tomm.merciai@gmail.com>,
"Umang Jain" <umang.jain@ideasonboard.com>,
"Benjamin Mugnier" <benjamin.mugnier@foss.st.com>,
"Sylvain Petinot" <sylvain.petinot@foss.st.com>,
"Christophe JAILLET" <christophe.jaillet@wanadoo.fr>,
"Julien Massot" <julien.massot@collabora.com>,
"Naushir Patuck" <naush@raspberrypi.com>,
"Yan, Dongcheng" <dongcheng.yan@intel.com>,
"Cao, Bingbu" <bingbu.cao@intel.com>,
"Qiu, Tian Shu" <tian.shu.qiu@intel.com>,
"Wang, Hongju" <hongju.wang@intel.com>,
"Stefan Klug" <stefan.klug@ideasonboard.com>,
"Mirela Rabulea" <mirela.rabulea@nxp.com>,
"André Apitzsch" <git@apitzsch.eu>,
"Heimir Thor Sverrisson" <heimir.sverrisson@gmail.com>,
"Kieran Bingham" <kieran.bingham@ideasonboard.com>,
"Stanislaw Gruszka" <stanislaw.gruszka@linux.intel.com>,
"Mehdi Djait" <mehdi.djait@linux.intel.com>,
"Ricardo Ribalda Delgado" <ribalda@kernel.org>,
"Hans de Goede" <hdegoede@redhat.com>,
"Tomi Valkeinen" <tomi.valkeinen@ideasonboard.com>
Subject: Re: [PATCH v11 24/66] media: uapi: Add V4L2_CID_METADATA_LAYOUT control
Date: Wed, 3 Sep 2025 14:13:07 +0300 [thread overview]
Message-ID: <aLgiwzB_IhGTHyHz@kekkonen.localdomain> (raw)
In-Reply-To: <qeuueahbuofjmeird3dr7xtcosfhymk72ceuma4dibudf2nn3s@z6smlg4yn2rf>
Hi Jacopo,
On Mon, Sep 01, 2025 at 05:07:55PM +0200, Jacopo Mondi wrote:
> Hi Sakari
>
> On Mon, Aug 25, 2025 at 12:50:25PM +0300, Sakari Ailus wrote:
> > The metadata layout control defines the layout of the metadata on the bus.
> > It is used on sub-devices that use generic metadata mbus codes on at least
> > on one of the pads.
>
> Ideally:
> 1) we have per pad controls
> 2) s/V4L2_CID_COLOR_PATTERN/V4L2_CID_DATA_PATTERN
> 3) we use V4L2_CID_DATA_PATTERN for both color components ordering and
> metadata layouts. A sub-device will expose the same control, but on
> different pads
>
> I know we don't want to block this series to wait for per-pad
> controls, but I'm a bit afraid V4L2_CID_METADATA_LAYOUT will be made
> redundant before it gets used for real (which maybe it's not a big
> deal as if no one uses it, we will be able to easily replace it).
I wouldn't do that, for the reason that the mbus codes in the two cases
will be different in any case so both will have separate namespaces.
Metadata is also unaffected by flipping, unlike the colour patterns.
I wonder what others think.
>
> >
> > Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> > ---
> > .../userspace-api/media/v4l/ext-ctrls-image-source.rst | 6 ++++++
> > drivers/media/v4l2-core/v4l2-ctrls-defs.c | 1 +
> > include/uapi/linux/v4l2-controls.h | 2 ++
> > 3 files changed, 9 insertions(+)
> >
> > diff --git a/Documentation/userspace-api/media/v4l/ext-ctrls-image-source.rst b/Documentation/userspace-api/media/v4l/ext-ctrls-image-source.rst
> > index 3cb7ee1b0aed..64c0f9ff5b1b 100644
> > --- a/Documentation/userspace-api/media/v4l/ext-ctrls-image-source.rst
> > +++ b/Documentation/userspace-api/media/v4l/ext-ctrls-image-source.rst
> > @@ -145,3 +145,9 @@ Image Source Control IDs
> > of the reversed readout. ``V4L2_COLOR_PATTERN_FLIP_BOTH`` for setting both
> > ``V4L2_COLOR_PATTERN_FLIP_HORIZONTAL`` and
> > ``V4L2_COLOR_PATTERN_FLIP_VERTICAL`` is provided as well.
> > +
> > +``V4L2_CID_METADATA_LAYOUT (integer)``
> > + The metadata layout control defines the on-bus metadata layout for metadata
> > + streams. The control is used in conjunction with :ref:`generic metadata
> > + formats <media-bus-format-generic-meta>` formats to specify the layout of the
> > + data.
> > diff --git a/drivers/media/v4l2-core/v4l2-ctrls-defs.c b/drivers/media/v4l2-core/v4l2-ctrls-defs.c
> > index 9ec65998a8f7..a7ea380de5ee 100644
> > --- a/drivers/media/v4l2-core/v4l2-ctrls-defs.c
> > +++ b/drivers/media/v4l2-core/v4l2-ctrls-defs.c
> > @@ -1157,6 +1157,7 @@ const char *v4l2_ctrl_get_name(u32 id)
> > case V4L2_CID_NOTIFY_GAINS: return "Notify Gains";
> > case V4L2_CID_COLOR_PATTERN: return "Color Pattern";
> > case V4L2_CID_COLOR_PATTERN_FLIP: return "Color Pattern Flip";
> > + case V4L2_CID_METADATA_LAYOUT: return "Metadata Layout";
> >
> > /* Image processing controls */
> > /* Keep the order of the 'case's the same as in v4l2-controls.h! */
> > diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
> > index eb9ffdd74d32..74e22a930be4 100644
> > --- a/include/uapi/linux/v4l2-controls.h
> > +++ b/include/uapi/linux/v4l2-controls.h
> > @@ -1239,6 +1239,8 @@ enum v4l2_jpeg_chroma_subsampling {
> > #define V4L2_COLOR_PATTERN_FLIP_BOTH \
> > (V4L2_COLOR_PATTERN_FLIP_HORIZONTAL | V4L2_COLOR_PATTERN_FLIP_VERTICAL)
> >
> > +#define V4L2_CID_METADATA_LAYOUT (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 12)
> > +
>
> Intentional empty line ?
I'll drop it.
>
> For the time being
> Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Thank you.
--
Kind regards,
Sakari Ailus
next prev parent reply other threads:[~2025-09-03 11:13 UTC|newest]
Thread overview: 147+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-25 9:50 [PATCH v11 00/66] Generic line based metadata support, internal pads Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 01/66] media: Documentation: Clean up figure titles Sakari Ailus
2025-09-01 11:11 ` Jacopo Mondi
2025-09-03 13:00 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 02/66] media: Documentation: Fix routing documentation flag references Sakari Ailus
2025-09-01 11:14 ` Jacopo Mondi
2025-09-03 13:01 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 03/66] media: Documentation: There are either immutable or mutable routes Sakari Ailus
2025-09-01 11:18 ` Jacopo Mondi
2025-09-02 9:38 ` Sakari Ailus
2025-09-03 13:22 ` Laurent Pinchart
2025-09-03 14:09 ` Sakari Ailus
2025-09-03 14:12 ` Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 04/66] media: Documentation: Document -ENXIO for VIDIOC_SUBDEV_S_ROUTING Sakari Ailus
2025-09-01 11:33 ` Jacopo Mondi
2025-09-02 10:00 ` Sakari Ailus
2025-09-03 13:47 ` Laurent Pinchart
2025-09-03 14:15 ` Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 05/66] media: v4l2-subdev: Extend VIDIOC_SUBDEV_S_ROUTING error codes Sakari Ailus
2025-09-01 11:35 ` Jacopo Mondi
2025-09-03 13:53 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 06/66] media: ccs: No need to set streaming to false in power off Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 07/66] media: ccs: Move ccs_pm_get_init function up Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 08/66] media: ccs: Rename out label of ccs_start_streaming Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 09/66] media: ccs: Move ccs_validate_csi_data_format up Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 10/66] media: ccs: Use {enable,disable}_streams operations Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 11/66] media: ccs: Track streaming state Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 12/66] media: ccs: Support frame descriptors Sakari Ailus
2025-09-01 12:06 ` Jacopo Mondi
2025-09-02 12:26 ` Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 13/66] media: mc: Add INTERNAL pad flag Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 14/66] media: Documentation: Refer to internal pads in metadata documentation Sakari Ailus
2025-09-01 12:08 ` Jacopo Mondi
2025-09-02 12:58 ` Sakari Ailus
2025-09-03 14:01 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 15/66] media: uapi: Add generic CSI-2 raw pixelformats Sakari Ailus
2025-09-01 13:25 ` Jacopo Mondi
2025-09-02 13:16 ` Sakari Ailus
2025-09-03 14:20 ` Laurent Pinchart
2025-09-03 14:30 ` Sakari Ailus
2025-09-02 13:16 ` Jacopo Mondi
2025-08-25 9:50 ` [PATCH v11 16/66] media: Documentation: Reference color pattern control in format docs Sakari Ailus
2025-09-01 13:51 ` Jacopo Mondi
2025-09-03 14:25 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 17/66] media: uapi: Add new media bus codes for generic raw formats Sakari Ailus
2025-09-01 14:12 ` Jacopo Mondi
2025-09-03 9:27 ` Sakari Ailus
2025-09-03 14:32 ` Laurent Pinchart
2025-09-03 14:35 ` Sakari Ailus
2025-09-03 14:39 ` Laurent Pinchart
2025-09-03 14:38 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 18/66] media: uapi: Add V4L2_CID_CONFIG_MODEL control Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 19/66] media: uapi: Add V4L2_CID_COLOR_PATTERN for describing color patterns Sakari Ailus
2025-09-03 15:05 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 20/66] media: Documentation: Reference COLOR_PATTERN control in raw format docs Sakari Ailus
2025-09-01 14:21 ` Jacopo Mondi
2025-09-03 10:03 ` Sakari Ailus
2025-09-03 12:03 ` Jacopo Mondi
2025-09-03 15:10 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 21/66] media: v4l: uapi: Add a control for color pattern flipping effect Sakari Ailus
2025-09-01 14:34 ` Jacopo Mondi
2025-09-03 10:25 ` Sakari Ailus
2025-09-03 10:40 ` Sakari Ailus
2025-09-03 12:18 ` Jacopo Mondi
2025-09-03 12:38 ` Sakari Ailus
2025-09-03 12:37 ` Jacopo Mondi
2025-09-03 13:25 ` Sakari Ailus
2025-09-03 15:28 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 22/66] media: Documentation: Reference flipping controls in raw format docs Sakari Ailus
2025-09-02 13:06 ` Jacopo Mondi
2025-09-03 15:31 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 23/66] media: Documentation: Document raw mbus codes and CFA for cameras Sakari Ailus
2025-09-01 14:59 ` Jacopo Mondi
2025-09-03 11:00 ` Sakari Ailus
2025-09-03 15:35 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 24/66] media: uapi: Add V4L2_CID_METADATA_LAYOUT control Sakari Ailus
2025-09-01 15:07 ` Jacopo Mondi
2025-09-03 11:13 ` Sakari Ailus [this message]
2025-09-03 19:52 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 25/66] media: Documentation: v4l: Document internal sink pads Sakari Ailus
2025-09-01 16:39 ` Jacopo Mondi
2025-09-03 12:17 ` Sakari Ailus
2025-09-03 12:29 ` Jacopo Mondi
2025-09-03 13:27 ` Sakari Ailus
2025-09-03 20:24 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 26/66] media: Documentation: Document embedded data guidelines for camera sensors Sakari Ailus
2025-09-01 16:42 ` Jacopo Mondi
2025-09-03 13:37 ` Sakari Ailus
2025-09-03 20:40 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 27/66] media: uapi: ccs: Add metadata layout for MIPI CCS embedded data Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 28/66] media: Documentation: Document non-CCS use of CCS embedded data layout Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 29/66] media: ccs: Add support for embedded data stream Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 30/66] media: Documentation: ccs: Document routing Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 31/66] media: ccs: Remove ccs_get_crop_compose helper Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 32/66] media: ccs: Rely on sub-device state locking Sakari Ailus
2025-09-03 20:56 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 33/66] media: ccs: Compute binning configuration from sub-device state Sakari Ailus
2025-09-03 21:00 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 34/66] media: ccs: Compute scaling " Sakari Ailus
2025-09-03 21:02 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 35/66] media: ccs: Remove which parameter from ccs_propagate Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 36/66] media: ccs: Detemine emb_data_ctrl register from sub-device state Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 37/66] media: uapi: Correct generic CSI-2 metadata format 4cc Sakari Ailus
2025-09-01 16:45 ` Jacopo Mondi
2025-09-03 21:35 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 38/66] Revert "media: uapi: v4l: Don't expose generic metadata formats to userspace" Sakari Ailus
2025-09-01 16:46 ` Jacopo Mondi
2025-09-03 21:36 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 39/66] media: Documentation: Add subdev configuration models, raw sensor model Sakari Ailus
2025-09-01 17:09 ` Jacopo Mondi
2025-08-25 9:50 ` [PATCH v11 40/66] media: Document enable_streams and disable_streams behaviour Sakari Ailus
2025-09-01 17:11 ` Jacopo Mondi
2025-09-03 21:29 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 41/66] media: Documentation: Add scaling and post-scaler crop for common raw Sakari Ailus
2025-09-01 17:12 ` Jacopo Mondi
2025-08-25 9:50 ` [PATCH v11 42/66] media: uapi: Add MIPI CCS configuration model Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 43/66] media: uapi: Add V4L2_CID_BINNING control for binning configuration Sakari Ailus
2025-09-01 17:27 ` Jacopo Mondi
2025-08-25 9:50 ` [PATCH v11 44/66] media: uapi: Add controls for sub-sampling configuration Sakari Ailus
2025-09-01 17:29 ` Jacopo Mondi
2025-08-25 9:50 ` [PATCH v11 45/66] media: Documentation: Add binning and sub-sampling controls Sakari Ailus
2025-09-01 17:30 ` Jacopo Mondi
2025-08-25 9:50 ` [PATCH v11 46/66] media: uapi: Add metadata layout for ov2740 embedded data Sakari Ailus
2025-09-03 21:43 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 47/66] media: ov2740: Add support for " Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 48/66] media: ov2740: Add support for generic raw formats Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 49/66] media: ov2740: Add metadata layout control Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 50/66] media: ov2740: Add support for G_SELECTION IOCTL Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 51/66] media: v4l: Add V4L2_SUBDEV_ROUTE_FL_IMMUTABLE sub-device routing flag Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 52/66] media: v4l: Add V4L2_SUBDEV_ROUTE_FL_STATIC " Sakari Ailus
2025-09-01 17:32 ` Jacopo Mondi
2025-09-03 21:52 ` Laurent Pinchart
2025-08-25 9:50 ` [PATCH v11 53/66] media: Documentation: Document IMMUTABLE and STATIC route flags Sakari Ailus
2025-09-01 17:35 ` Jacopo Mondi
2025-08-25 9:50 ` [PATCH v11 54/66] media: uapi: v4l: subdev: Enable streams API Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 55/66] media: ccs: Add IMMUTABLE and STATIC route flags Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 56/66] media: ov2740: " Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 57/66] media: i2c: imx219: Inline imx219_update_pad_format() in its caller Sakari Ailus
2025-08-25 9:50 ` [PATCH v11 58/66] media: i2c: imx219: Add internal image sink pad Sakari Ailus
2025-08-25 9:51 ` [PATCH v11 59/66] media: i2c: imx219: Add image stream Sakari Ailus
2025-08-25 9:51 ` [PATCH v11 60/66] media: i2c: imx219: Report internal routes to userspace Sakari Ailus
2025-08-25 9:51 ` [PATCH v11 61/66] media: i2c: imx219: Report streams using frame descriptors Sakari Ailus
2025-08-25 9:51 ` [PATCH v11 62/66] media: i2c: imx219: Add embedded data support Sakari Ailus
2025-08-25 9:51 ` [PATCH v11 63/66] media: imx219: Add support for generic raw formats Sakari Ailus
2025-08-25 9:51 ` [PATCH v11 64/66] media: ccs: Add frame descriptor quirk Sakari Ailus
2025-08-25 9:51 ` [PATCH v11 65/66] media: ipu6: Add support for luma-only formats Sakari Ailus
2025-08-25 9:51 ` [PATCH v11 66/66] media: ipu6: Add support for raw CFA-agnostic formats Sakari Ailus
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=aLgiwzB_IhGTHyHz@kekkonen.localdomain \
--to=sakari.ailus@linux.intel.com \
--cc=benjamin.mugnier@foss.st.com \
--cc=bingbu.cao@intel.com \
--cc=christophe.jaillet@wanadoo.fr \
--cc=dave.stevenson@raspberrypi.com \
--cc=dongcheng.yan@intel.com \
--cc=eagle.alexander923@gmail.com \
--cc=git@apitzsch.eu \
--cc=hans@jjverkuil.nl \
--cc=hdegoede@redhat.com \
--cc=heimir.sverrisson@gmail.com \
--cc=hongju.wang@intel.com \
--cc=hpa@redhat.com \
--cc=jacopo.mondi@ideasonboard.com \
--cc=julien.massot@collabora.com \
--cc=kieran.bingham@ideasonboard.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-media@vger.kernel.org \
--cc=mehdi.djait@linux.intel.com \
--cc=mirela.rabulea@nxp.com \
--cc=naush@raspberrypi.com \
--cc=prabhakar.csengg@gmail.com \
--cc=ribalda@kernel.org \
--cc=stanislaw.gruszka@linux.intel.com \
--cc=stefan.klug@ideasonboard.com \
--cc=sylvain.petinot@foss.st.com \
--cc=tian.shu.qiu@intel.com \
--cc=tomi.valkeinen@ideasonboard.com \
--cc=tomm.merciai@gmail.com \
--cc=umang.jain@ideasonboard.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).