From: Stefan Klug <stefan.klug@ideasonboard.com>
To: Kieran Bingham <kieran.bingham@ideasonboard.com>,
Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: "Jacopo Mondi" <jacopo.mondi@ideasonboard.com>,
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>,
"Mirela Rabulea" <mirela.rabulea@nxp.com>,
"André Apitzsch" <git@apitzsch.eu>,
"Heimir Thor Sverrisson" <heimir.sverrisson@gmail.com>,
"Stanislaw Gruszka" <stanislaw.gruszka@linux.intel.com>,
"Mehdi Djait" <"me h di.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: Fri, 16 Jan 2026 15:46:12 +0100 [thread overview]
Message-ID: <176857477280.5324.260292878127292345@localhost> (raw)
In-Reply-To: <176851117186.98704.5427092951514812674@localhost>
Hi Sakari,
Quoting Stefan Klug (2026-01-15 22:06:11)
> Hi Sakari,
>
> Quoting Sakari Ailus (2026-01-15 13:04:28)
> > Hi Kieran, Stefan, Jacopo,
> >
> > On Fri, Oct 10, 2025 at 11:56:37AM +0100, Kieran Bingham wrote:
> > > Quoting Stefan Klug (2025-10-10 10:45:49)
> > > > Hi Sakari, hi Jacopo,
> > > >
> > > > Quoting Jacopo Mondi (2025-10-07 16:01:11)
> > > > > Hi again Sakari,
> > > > > cc Kieran and Stefan
> > > > >
> > > > > Stefan and Kieran brought to my attention a use case I would like to
> > > > > discuss with you
> > > > >
> > > > > On Fri, Oct 03, 2025 at 03:25:19PM +0200, Jacopo Mondi wrote:
> > > > > > Hi Sakari,
> > > > > >
> > > > > > On Fri, Oct 03, 2025 at 04:15:34PM +0300, Sakari Ailus wrote:
> > > > > > > Hi Jacopo,
> > > > > >
> > > > > > [snip]
> > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > > > A recent discussion on libcamera made me wonder a few things
> > > > > > > >
> > > > > > > > https://patchwork.libcamera.org/patch/24547/
> > > > > > > >
> > > > > > > > In the current world (pre-RAW sensor model) the situation can be
> > > > > > > > summarized as
> > > > > > > >
> > > > > > > > TGT_NATIVE_SIZE = full pixel array (readable and non readable)
> > > > > > > > TGT_CROP_BOUNDS = readable pixel array (visible and non visibile pixels)
> > > > > > >
> > > > > > > Crop bounds is generally the same as native size.
> > > > > > >
> > > > > >
> > > > > > I checked two sensors datasheet for this yesterday and both of them
> > > > > > had parts of the pixel array that cannot be read out
> > > > > >
> > > > > > > > TGT_CROP_DEFAULT = visible pixels
> > > > > > >
> > > > > > > The default could exclude not-so-great pixels, too.
> > > > > > >
> > > > > >
> > > > > > ok, suggested pixel array area used for image capture purposes then
> > > > > >
> > > > > > > > TGT_CROP = analgoue crop
> > > > > > >
> > > > > > > This could include digital crop as well.
> > > > > > >
> > > > > >
> > > > > > Yes it might, not all sensor drivers behaves the same indeed
> > > > > >
> > > > > > > >
> > > > > > > > where:
> > > > > > > > - visibile = pixels used for image capture purpose
> > > > > > > > - non-visible = optically black, dummies etc
> > > > > > > >
> > > > > > > > With the RAW sensor model:
> > > > > > > >
> > > > > > > > format(1/0) = readable pixel array (visible and non visible)
> > > > > > > > TGT_CROP_DEFAULT(1/0) = visible pixel area
> > > > > > > > TGT_CROP(1/0) = analogue crop
> > > > > > > > TGT_COMPOSE(1/0) = binning/skipping
> > > > > > > >
> > > > > > > > Have we lost the ability to report the full pixel array size (readable
> > > > > > > > and not readable) ? Is this intentional ? As if pixels cannot be read
> > > > > > > > out they basically do no exist, and the information on the actual
> > > > > > > > number of pixels (including non readable ones) should be kept
> > > > > > > > somewhere else (like the libcamera sensor properties database) ?
> > > > > > >
> > > > > > > I'd keep this information in the user space if needed. There's little
> > > > > > > software could presumably do with this information.
> > > > > > >
> > > > > >
> > > > > > Agreed, there is no value I can think of in having this information in
> > > > > > drivers
> > > > > >
> > > > >
> > > > > So, Kieran and Stefan are working with a sensor whose driver was
> > > > > initially upstreamed with a wrong "readable pixel array"
> > > > > (TGT_CROP_BOUNDS). The developer later realized there was more of the
> > > > > pixel array to read and there was a use for the non-image pixels like
> > > > > OB ones.
> > > > >
> > > > > With the current model this is fine (sort of), as all rectangles are
> > > > > expressed with the TGT_NATIVE size reference. TGT_BOUNDS might
> > > > > increases but TGT_CROP_DEFAULT and TGT_CROP are still valid both in the
> > > > > driver but also in userspace, which might have encoded some known
> > > > > "tested" configurations.
> > > > >
> > > > > With the new model we lose the information reported by TGT_NATIVE and
> > > > > all rectangles will be expressed with the format on 1/0 as reference.
> > > > > If the format changes because we later find out there were portions of
> > > > > the pixel array that could have been read out, all other rectangles
> > > > > will have to change as well, both in the driver (which is ok-ish) but
> > > > > also in userspace, which we have no control on.
> > > > >
> > > > > Stefan and Kieran could elaborate more on this, but basically, the
> > > > > physical array is the only fixed reference we could actually count on.
> > > > > Other rectangles, are subject to the driver developer understanding of
> > > > > how the device work, which as we know very well, can change over time.
> > > > >
> > > > > Now, if you agree this is something to be concerned on, I presume the
> > > > > fix is quite easy
> > > > >
> > > > > format(1/0) = physical pixel array size
> > > > > TGT_CROP_BOUNDS(1/0) = readable pixel array (visible and non visible)
> > > > > TGT_CROP_DEFAULT(1/0) = visible pixel area
> > > > > TGT_CROP(1/0) = analogue crop
> > > > > TGT_COMPOSE(1/0) = binning/skipping
> > > > >
> > > > > which basically only require re-introducing the use of CROP_BOUNDS in
> > > > > the RAW camera model specification.
> > > >
> > > > Thanks Jacopo for writing that up. Maybe a little addition on that
> > > > matter. To our (especially Kierans) experience all the rectangles tend
> > > > to be unexpectedly difficult to handle when you try to configure the
> > > > sensors in a pixel perfect manner (having binned and non binned modes
> > > > cover exactly the same area in all possible flipping configurations).
> > > > The datasheets I'm aware of use the physical pixel array as common
> > > > coordinate system to describe the geometry. Adding the readable pixel
> > > > array as "artificial" coordinate system makes it difficult to match the
> > > > values reported by a v4l driver with the datasheets at hand.
> > > >
> > > > Another time where this comes into play is lens shading correction where
> > > > you would want to describe the LSC against one reference coordinate
> > > > system that ideally never ever changes.
> > > >
> > > > To add to the confusion I'd love to have another rectangle added to the
> > > > list. I don't have a proper name for it. The intent would be to
> > > > distinguish between the "readable pixel array" and the "light exposed
> > > > pixel array". So the list would become:
> > > >
> > > > format(1/0) = physical pixel array size
> > > > TGT_CROP_BOUNDS(1/0) = readable pixel array (visible and non visible)
> > > > TGT_CROP_VISIBLE(1/0) = visible pixel area including "flesh" for ISP
> >
> > Carnivorous ISPs?
>
> Yes, beware! :-)
>
> >
> > > > TGT_CROP_DEFAULT(1/0) = Recommended "good" pixels
> >
> > How often is this known? Or would you rely on what the vendor tells?
>
> We had a brief discussion about that internally. Some datasheets contain
> that information by surrounding the "Recording area" with a margin
> labeled as "Effective margin for color processing". I don't have numbers
> how often that is the case though. As it doesn't add much technical
> value to the kernel we could set TGT_CROP_DEFAULT to the above mentioned
> TGT_CROP_VISIBLE and keep the information about the color processing
> margin outside the kernel, e.g. in libcamera.
Jacopo told me that this wasn't completely clear and rereading it, he is
right. So to clarify: The idea is to skip the introduction of
TGT_CROP_VISIBLE and just include the processing margin in
TGT_CROP_DEFAULT. The less rectangles, the better.
>
> The only downside I see there is that (to my knowledge) it will be
> difficult to guarantee that really all the pixels inside
> TGT_CROP_VISIBLE are good. That's ok for libraries like libcamera that
> will default to cutting off some margin after processing, but it might
> be a problem for simple applications that just try capture the
> CROP_DEFAULT. But maybe these applications do not exist at all :-)
>
> >
> > > > TGT_CROP(1/0) = analogue crop
> > > > TGT_COMPOSE(1/0) = binning/skipping
> > > >
> > > > The idea is to be able to capture a larger image from the sensor for ISP
> > > > processing and then cut it down to CROP_DEFAULT. This way we can prevent
> > > > interpolation seams at the edges. Maybe the naming is bad and we should
> > > > make CROP_BOUNDS the recommended area and add CROP_READABLE to denote
> > > > the readable pixels...
> >
> > CROP_BOUNDS really needs to be the bounding rectangle for everything.
> > CROP_DEFAULT and NATIVE_SIZE are still up to definition, to a degree.
> >
> > Have you tried capturing the optical black pixels on different sensors?
>
> Yes, we did at least on the imx335 and imx283. Kieran is more in the
> details there...
>
> >
> > CCS specifies optical black pixel capture separately from the visible
> > pixels and support also different VC, DT, depending on sensor capabilities;
> > cropping results in capturing optical black pixel on the rows and columns
> > specified for the crop area. In other words, the selection API isn't
> > necessarily how optical black pixel capture is configured, at least for
> > CCS.
>
> Yes, that is a bit of a pain. Being able to select the VC or DT doesn't
> make things easier. Some SoCs (e.g. imx8mp) are not able to capture
> separate VCs or DTs. So to get to the information the only way is to go
> through the image stream. Also for some use-cases like extra long
> exposures in astro-photography it might be useful to have the OB in the
> image data for postprocessing. (The last case is a bit made up as I
> don't know much about astro-photography tbh).
>
> So I believe we should keep the option to capture OB over the image
> stream.
>
> >
> > Let's assume the case of the sensor where you find, after the driver has
> > been upstreamed, that there are extra columns and rows of pixels beyond the
> > left and top of the image. How would you modify the selection rectangles
> > and the format to allow capturing image data from that area? Can you avoid
> > affecting the existing userspace?
>
> That would mean that the TGT_CROP_BOUNDS and or TGT_CROP_DEFAULT
> changes. The assumption is that the native coordinate system (the old
> TGT_CROP_NATIVE_SIZE) stays in place so the application can still use
> all the tuning that was done relative to the native coordinate system.
> As the TGT_CROP_BOUNDS from the first version has top/left coordinates >
> 0 there is room to enlarge the TGT_CROP_BOUNDS in that direction.
>
> Sure, this does not work if the initial driver didn't specify
> TGT_CROP_BOUNDS with the correct top/left offset. It also does not guard
> against really wrong datasheets or arbitrary bugs. But allows to
> transparently improve in situations where the first version implements
> the "default FullHD setup from the vendor" and later a improved version
> of the driver allows access to the additional margins around.
>
> Best regards,
> Stefan
>
> >
> > >
> > > I think this is important - and in IMX283 - it seems to be exactly what
> > > the datasheet is ultimately recommending.
> > >
> > > > > What do you think ?
> > > >
> > > > Best regards,
> > > > Stefan
> > > >
> > > > >
> > > > > > > >
> > > > > > > > All the discussion about readable/non-readable, visible/non-visibile
> > > > > > > > and active and inactive areas make me think we would benefit from
> > > > > > > > presenting a small glossary at the beginning of the "Sensor pixel
> > > > > > > > array size, cropping and binning" paragraph ?
> > >
> > > Oh yes, some sort of nicely interpretable description of "this rectangle
> > > is expected to be this equivalent set of pixels" would be helpful. I've
> > > found it so hard to identify which the right rectangle is here :D
> > >
> > >
> > > I'm also weary that we might need to find a way to convey the
> > > relationship between binning mode restrictions/offsets too.
> > >
> > > The IMX283 2x2 and 3x3 binning modes produce offset outputs:
> > >
> > > vwinpos is the coordinate programmed to the sensor to get a position -
> > > and we have tooling in camshark that lets us determine the exact pixels
> > > we capture from any mode to see what was really produced by the sensor:
> > >
> > >
> > > ```
> > > 'Sensor Native' ?
> > > pixel (row) -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
> > > native pixels | | | | | | | | | | | | | | | | | | | | | | | | |
> > >
> > >
> > > vwinpos -4 -3 -2 -1 0 1 2 3 4 5 6 7 8
> > > no-binning | | | | | | | | | | | | | | | | | | | | | | | | |
> > >
> > >
> > > vwinpos -3 -2 -1 0 1 2
> > > /2 binning | | | | | | | | | | | | |
> > >
> > >
> > > vwinpos 0 1 2 3 4
> > > /3 binning | | | | | | | | |
> > > ```
> > >
> > >
> > > To fix this - I'm moving the current '0' position for IMX283 to -2 in
> > > the non binned modes.
> > >
> > > That gives me a coordinate system where at least I can define an
> > > alignment for 2x2 and 3x3 binning every 12 pixels (as the lowest common
> > > multiplier).
> > >
> > > But - also murkies the water from the above rectanges as this sensor
> > > turns out to have 48 lines of pixels (24 bayer pair lines) 'less than
> > > zero' ... or at least those are the ones that are visible in light. I
> > > can read further below zero but only for black pixels.
> > >
> > > So in otherwords - I can't even make a corresponding coordinate
> > > rectangle that exactly matches the 'all readable' pixels or 'all
> > > illuminated pixels' ... Ayeeeeee...
> > >
> > > My lesson/take on this: Don't trust the datasheets. They lie :D
> >
> > --
> > Kind regards,
> >
> > Sakari Ailus
> >
>
next prev parent reply other threads:[~2026-01-16 14:46 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
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 [this message]
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=176857477280.5324.260292878127292345@localhost \
--to=stefan.klug@ideasonboard.com \
--cc="me h di.djait"@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=mirela.rabulea@nxp.com \
--cc=naush@raspberrypi.com \
--cc=prabhakar.csengg@gmail.com \
--cc=ribalda@kernel.org \
--cc=sakari.ailus@linux.intel.com \
--cc=stanislaw.gruszka@linux.intel.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