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 39/66] media: Documentation: Add subdev configuration models, raw sensor model
Date: Thu, 2 Oct 2025 10:09:52 +0300 [thread overview]
Message-ID: <aN4lQPK5Mqve2bUI@kekkonen.localdomain> (raw)
In-Reply-To: <5fwlztz2q2fewyml774my3sdw3wv5wdhnl6p4mfbubm4erm5ft@sthie2bobklf>
Hi Jacopo,
On Thu, Sep 25, 2025 at 12:31:09PM +0200, Jacopo Mondi wrote:
> Hi Sakari
>
> On Fri, Sep 19, 2025 at 03:17:56PM +0300, Sakari Ailus wrote:
> > Hi Jacopo,
> >
> > On Mon, Sep 01, 2025 at 07:09:29PM +0200, Jacopo Mondi wrote:
> > > Hi Sakari
> > >
> > > On Mon, Aug 25, 2025 at 12:50:40PM +0300, Sakari Ailus wrote:
> > > > Sub-device configuration models define what V4L2 API elements are
> > > > available on a compliant sub-device and how do they behave.
> > > >
> > > > The patch also adds a model for common raw sensors.
> > > >
> > > > Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> > > > Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
> > > > Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
> > > > Reviewed-by: Mirela Rabulea <mirela.rabulea@nxp.com>
> > > > Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
> > > > ---
> > > > .../media/drivers/camera-sensor.rst | 4 +
> > > > .../media/v4l/common-raw-sensor.dia | 442 ++++++++++++++++++
> > > > .../media/v4l/common-raw-sensor.svg | 134 ++++++
> > > > .../userspace-api/media/v4l/dev-subdev.rst | 2 +
> > > > .../media/v4l/subdev-config-model.rst | 230 +++++++++
> > > > 5 files changed, 812 insertions(+)
> > > > create mode 100644 Documentation/userspace-api/media/v4l/common-raw-sensor.dia
> > > > create mode 100644 Documentation/userspace-api/media/v4l/common-raw-sensor.svg
> > > > create mode 100644 Documentation/userspace-api/media/v4l/subdev-config-model.rst
> > > >
> > > > diff --git a/Documentation/userspace-api/media/drivers/camera-sensor.rst b/Documentation/userspace-api/media/drivers/camera-sensor.rst
> > > > index cbbfbb0d8273..39f3f91c6733 100644
> > > > --- a/Documentation/userspace-api/media/drivers/camera-sensor.rst
> > > > +++ b/Documentation/userspace-api/media/drivers/camera-sensor.rst
> > > > @@ -18,6 +18,8 @@ binning functionality. The sensor drivers belong to two distinct classes, freely
> > > > configurable and register list-based drivers, depending on how the driver
> > > > configures this functionality.
> > > >
> > > > +Also see :ref:`media_subdev_config_model_common_raw_sensor`.
> > > > +
> > > > Freely configurable camera sensor drivers
> > > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > >
> > > > @@ -118,6 +120,8 @@ values programmed by the register sequences. The default values of these
> > > > controls shall be 0 (disabled). Especially these controls shall not be inverted,
> > > > independently of the sensor's mounting rotation.
> > > >
> > > > +.. _media_using_camera_sensor_drivers_embedded_data:
> > > > +
> > > > Embedded data
> > > > -------------
> > > >
> > > > diff --git a/Documentation/userspace-api/media/v4l/common-raw-sensor.dia b/Documentation/userspace-api/media/v4l/common-raw-sensor.dia
> > > > new file mode 100644
> > > > index 000000000000..24b3f2b2a626
> > > > --- /dev/null
> > > > +++ b/Documentation/userspace-api/media/v4l/common-raw-sensor.dia
> > >
> > > [snip]
> > >
> > > > diff --git a/Documentation/userspace-api/media/v4l/common-raw-sensor.svg b/Documentation/userspace-api/media/v4l/common-raw-sensor.svg
> > > > new file mode 100644
> > > > index 000000000000..1d6055da2519
> > > > --- /dev/null
> > > > +++ b/Documentation/userspace-api/media/v4l/common-raw-sensor.svg
> > >
> > > [snip]
> > >
> > > > diff --git a/Documentation/userspace-api/media/v4l/dev-subdev.rst b/Documentation/userspace-api/media/v4l/dev-subdev.rst
> > > > index bb86cadfad1c..b0774b9a9b71 100644
> > > > --- a/Documentation/userspace-api/media/v4l/dev-subdev.rst
> > > > +++ b/Documentation/userspace-api/media/v4l/dev-subdev.rst
> > > > @@ -846,3 +846,5 @@ stream while it may be possible to enable and disable the embedded data stream.
> > > >
> > > > The embedded data format does not need to be configured on the sensor's pads as
> > > > the format is dictated by the pixel data format in this case.
> > > > +
> > > > +.. include:: subdev-config-model.rst
> > > > diff --git a/Documentation/userspace-api/media/v4l/subdev-config-model.rst b/Documentation/userspace-api/media/v4l/subdev-config-model.rst
> > > > new file mode 100644
> > > > index 000000000000..1e6c58931ea0
> > > > --- /dev/null
> > > > +++ b/Documentation/userspace-api/media/v4l/subdev-config-model.rst
> > > > @@ -0,0 +1,230 @@
> > > > +.. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later
> > > > +
> > > > +.. _media_subdev_config_model:
> > > > +
> > > > +Sub-device configuration models
> > > > +===============================
> > > > +
> > > > +The V4L2 specification defines a subdev API that exposes three type of
> > > > +configuration elements: formats, selection rectangles and controls. The
> > > > +specification contains generic information about how those configuration
> > > > +elements behave, but not precisely how they apply to particular hardware
> > > > +features. We leave some leeway to drivers to decide how to map selection
> > > > +rectangles to device features, as long as they comply with the V4L2
> > > > +specification. This is needed as hardware features differ between devices, so
> > > > +it's the driver's responsibility to handle this mapping.
> > > > +
> > > > +Unfortunately, this lack of clearly defined mapping in the specification has led
> > > > +to different drivers mapping the same hardware features to different API
> > > > +elements, or implementing the API elements with slightly different
> > > > +behaviours. Furthermore, many drivers have implemented selection rectangles in
> > > > +ways that do not comply with the V4L2 specification. All of this makes userspace
> > > > +development difficult.
> > > > +
> > > > +Sub-device configuration models specify in detail what the user space can expect
> > > > +from a sub-device in terms of V4L2 sub-device interface support, semantics
> > > > +included.
> > > > +
> > > > +A sub-device may implement more than one configuration model at the same
> > > > +time. The implemented configuration models can be obtained from the sub-device's
> > > > +``V4L2_CID_CONFIG_MODEL`` control.
> > > > +
> > > > +.. _media_subdev_config_model_common_raw_sensor:
> > > > +
> > > > +Common raw camera sensor model
> > > > +------------------------------
> > > > +
> > > > +The common raw camera sensor model defines a set of enumeration and
> > > > +configuration interfaces (formats, selections etc.) that cover the vast majority
> > > > +of functionality of raw camera sensors. Not all of the interfaces are
> > > > +necessarily offered by all drivers.
> > > > +
> > > > +A sub-device complies with the common raw sensor model if the
> > > > +``V4L2_CONFIG_MODEL_COMMON_RAW_SENSOR`` bit is set in the
> > > > +``V4L2_CID_CONFIG_MODEL`` control of the sub-device.
> > > > +
> > > > +The common raw camera sensor model is aligned with
> > > > +:ref:`media_using_camera_sensor_drivers`. Please refer to that regarding aspects
> > > > +not specified here.
> > > > +
> > > > +Each camera sensor implementing the common raw sensor model exposes a single
> > > > +V4L2 sub-device. The sub-device contains a single source pad (0) and two or more
> > > > +internal pads: one or more image data internal pads (starting from 1) and
> > > > +optionally an embedded data pad.
> > > > +
> > > > +Additionally, further internal pads may be supported for other features. Using
> > > > +more than one image data internal pad or more than one non-image data pad
> > > > +requires these pads documented separately for the given device. The indices of
> > > > +the image data internal pads shall be lower than those of the non-image data
> > > > +pads.
> > > > +
> > > > +This is shown in :ref:`media_subdev_config_model_common_raw_sensor_subdev`.
> > >
> > > possibly doesn't need a link as the image is just here below
> > >
> > > > +
> > > > +.. _media_subdev_config_model_common_raw_sensor_subdev:
> > > > +
> > > > +.. kernel-figure:: common-raw-sensor.svg
> > > > + :alt: common-raw-sensor.svg
> > > > + :align: center
> > > > +
> > > > + **Common raw sensor sub-device with n pads (n == 2)**
> > > > +
> > > > +Routes
> > > > +^^^^^^
> > > > +
> > > > +A sub-device conforming to common raw camera sensor model implements the
> > > > +following routes.
> > > > +
> > > > +.. flat-table:: Routes
> > > > + :header-rows: 1
> > > > +
> > > > + * - Sink pad/stream
> > > > + - Source pad/stream
> > > > + - Static (X/M(aybe)/-)
> > > > + - Mandatory (X/-)
> > > > + - Synopsis
> > > > + * - 1/0
> > > > + - 0/0
> > > > + - X
> > > > + - X
> > > > + - Image data
> > > > + * - 2/0
> > > > + - 0/1
> > > > + - M
> > > > + - \-
> > > > + - Embedded data
> > > > +
> > > > +Support for the embedded data stream is optional. Drivers supporting the
> > > > +embedded data stream may allow disabling and enabling the route when the
> > > > +streaming is disabled.
> > >
> > > I would
> > >
> > > s/when the streaming is disabled//
> >
> > Sounds good.
> >
> > >
> > > > +
> > > > +Sensor pixel array size, cropping and binning
> > > > +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> > > > +
> > > > +The sensor's pixel array is divided into one or more areas. The areas around the
> > > > +edge of the pixel array, usually one or more sides, may contain optical black
> > >
> > > You say that "the pixel array is divided into one or more areas" and
> > > then list "the areas around the edge of the pixel array" which is confusing
> > >
> > > I think it would be better as
> > >
> > > The sensor's full pixel array is divided into one or more areas, one
> > > (or multiple) active area which contains visible pixels surrounded,
> > > usually on one or more sides, by non-active areas which may contain
> > > optical black pixels, dummy pixels and other non-image pixels. The
> > > entire pixel array areas size, including the active and non-active
> > > portions is conveyed by the format on (pad, stream) pair 1/0.
> > >
> > > This would also better define the "visible pixels" term which is used
> > > in the rest of the documentation.
> >
> > There indeed were issues in the terms used in the original text. How about:
> >
> > The sensor's pixel array is divided into one or more areas. The areas around the
> > the visible area in the pixel array, usually one or more sides, may contain
>
> I still feel that "active area that contains visible pixels" better
> defines what "visibile area" is... not a problem anyway
How about "visible pixel area"?
>
> > optical black pixels, dummy pixels and other non-image pixels. The full size of
> > the pixel array that may be captured is conveyed by the format on (pad, stream)
> > pair 1/0.
> >
> > A rectangle within the pixel array contains the visible pixels. Capturing the
> > non-visible pixels outside the visible pixel area may be supported by the
> > sensor. The visible pixel area corresponds to the ``V4L2_SEL_TGT_CROP_DEFAULT``
> > selection target on (pad, stream) pair 1/0.
> >
>
> Just for sake of discussion: in libcamera we support multiple,
> possible overlapping, active pixel areas:
> https://git.libcamera.org/libcamera/libcamera.git/tree/src/libcamera/property_ids_core.yaml#n594
>
> tbh I don't know how common this is, but as far as I can tell we won't
> be able to describe them here
Do you have a sensor that would support this?
>
>
> > >
> > > > +
> > > > +A rectangle within the pixel array contains the visible pixels. Capturing the
> > >
> > > If you accept the above, you can drop the first sentence here
> > >
> > > > +non-visible pixels outside the visible pixel area may be supported by the
> > > > +sensor. The visible pixel area corresponds to the ``V4L2_SEL_TGT_CROP_DEFAULT``
> > > > +selection target on (pad, stream) pair 1/0.
> > > > +
> > > > +Sensors can perform multiple operations that affect the output image size. First
> > > > +of these is the analogue crop. Analogue crop limits the area of the pixel array
> > >
> > > s/First one of these/The first one of these/
> >
> > Yes.
> >
> > >
> > > > +which the sensor will read, affecting sensor timing as well. The granularity of
> > > > +the analogue crop configuration varies greatly across sensors: some sensors
> > > > +support only a few different analogue crop configurations whereas others may
> > > > +support anything divisible by a given number of pixels. The analogue crop
> > > > +configuration corresponds to the ``V4L2_SEL_TGT_CROP`` selection target on (pad,
> > > > +stream) pair 1/0. The default analogue crop rectangle corresponds to the visible
> > > > +pixel area.
> > > > +
> > > > +In the next step, binning is performed on the image data read from camera
> > > > +sensor's pixel array, as determined by the analogue crop configuration. Enabling
> > > > +binning will effectively result in an image smaller than the original by given
> > > > +binning factors horizontally and vertically. Typical values are 1/2 and 1/3 but
> > > > +others may well be supported by the hardware as well.
> > > > +
> > > > +Sub-sampling follows binning. Sub-sampling, like binning, reduces the size of
> > > > +the image by including only a subset of samples read from the sensor's pixel
> > > > +matrix, typically every n'th pixel horizontally and vertically, taking the
> > > > +sensor's color pattern into account. Sub-sampling is generally configurable
> > > > +separately horizontally and vertically.
> > > > +
> > > > +Binning and sub-sampling are configured using the ``V4L2_SEL_TGT_COMPOSE``
> > >
> > > s/Binning and sub-sampling are/The combined effect of binning and
> > > sub-sampling is/
> >
> > Yes.
> >
> > >
> > > > +rectangle, relative to the analogue crop rectangle, on (pad, stream) pair
> > > > +1/0. The driver implementation determines how to configure binning and
> > > > +sub-sampling to achieve the desired size.
> > > > +
> > > > +The digital crop operation takes place after binning and sub-sampling. It is
> > > > +configured by setting the ``V4L2_SEL_TGT_CROP`` rectangle on (pad, stream) pair
> > > > +0/0. The resulting image size is further output by the sensor.
> > >
> > > by the sensor on the bus.
> > >
> > > ?
> >
> > We should in fact get rid of the word "bus" in this context as the CSI-2
> > interface is not an actual (addressable) bus. How about "sensor's data
> > interface"? Someone will probably ask what that data interface is. :-)
>
> True :) up to you!
I'll use the data interface here.
--
Kind regards,
Sakari Ailus
next prev parent reply other threads:[~2025-10-02 7:10 UTC|newest]
Thread overview: 193+ 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-09-19 10:07 ` Sakari Ailus
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-09-19 21:35 ` Sakari Ailus
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-09-19 10:09 ` Sakari Ailus
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
2025-09-03 19:52 ` Laurent Pinchart
2025-09-19 10:36 ` Sakari Ailus
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-09-19 11:26 ` Sakari Ailus
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-09-19 11:46 ` Sakari Ailus
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-09-22 7:48 ` Sakari Ailus
2026-01-14 12:13 ` Sakari Ailus
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
2026-01-14 11:16 ` Sakari Ailus
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-09-19 12:17 ` Sakari Ailus
2025-09-25 10:31 ` Jacopo Mondi
2025-10-02 7:09 ` Sakari Ailus [this message]
2025-10-02 7:22 ` Jacopo Mondi
2025-10-02 7:54 ` Sakari Ailus
2025-10-03 7:10 ` Jacopo Mondi
2025-10-03 13:15 ` Sakari Ailus
2025-10-03 13:25 ` Jacopo Mondi
2025-10-07 14:01 ` Jacopo Mondi
2025-10-10 9:45 ` Stefan Klug
2025-10-10 10:56 ` Kieran Bingham
2026-01-15 12:04 ` Sakari Ailus
2026-01-15 21:06 ` Stefan Klug
2026-01-16 14:46 ` Stefan Klug
2026-01-16 22:03 ` Sakari Ailus
2026-01-13 14:46 ` Jacopo Mondi
2026-01-14 12:54 ` Sakari Ailus
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-09-19 12:21 ` Sakari Ailus
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-09-19 12:42 ` Sakari Ailus
2025-09-25 10:45 ` Jacopo Mondi
2025-10-02 7:12 ` Sakari Ailus
2025-10-02 7:18 ` 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-09-19 14:53 ` Sakari Ailus
2025-10-10 10:21 ` Stefan Klug
2025-10-20 14:42 ` David Plowman
2025-10-20 19:24 ` Sakari Ailus
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-09-19 16:25 ` Sakari Ailus
2026-03-26 16:05 ` Benjamin Mugnier
2026-03-26 16:54 ` Sakari Ailus
2026-03-30 15:00 ` Benjamin Mugnier
2026-03-30 16:20 ` Sakari Ailus
2026-03-31 6:40 ` Jacopo Mondi
2026-03-31 10:45 ` Benjamin Mugnier
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-09-19 16:45 ` Sakari Ailus
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-09-19 16:57 ` Sakari Ailus
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-11-11 8:01 ` Bingbu Cao
2025-08-25 9:51 ` [PATCH v11 66/66] media: ipu6: Add support for raw CFA-agnostic formats Sakari Ailus
2025-11-11 8:03 ` Bingbu Cao
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=aN4lQPK5Mqve2bUI@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