public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/25] drivers: media: imx283 improvements
@ 2026-02-13 14:01 Kieran Bingham
  2026-02-13 14:01 ` [PATCH v2 01/25] media: i2c: imx283: Report correct V4L2_SEL_TGT_CROP Kieran Bingham
                   ` (24 more replies)
  0 siblings, 25 replies; 42+ messages in thread
From: Kieran Bingham @ 2026-02-13 14:01 UTC (permalink / raw)
  To: Umang Jain, Sakari Ailus, Mauro Carvalho Chehab, Hans Verkuil
  Cc: Jai Luthra, linux-media, linux-kernel, Kieran Bingham,
	Stefan Klug, stable

This now far more extensive series reposts some patches which provide
fixes to the users of the IMX283 camera sensor to resolve handling
exposure and blanking updates and the reporting of the cropping modes
configured.

The series then goes on to extensively extend the driver to move towards
a dedicated scan out structure allowing mode definitions to be greatly
simplified and factor out a lot of common definitions and duplication.

Vertical offset corrections are added which handle the correct
alignment of the output mode in the different binning combinations which
otherwise translate to an offset in the image capture which is
detectable when the camera is used as a measurement device.

To make use of this, the horizontal and vertical configuration is
refactored to make it clearer what calculations are being performed and
manage the vertical positioning based on the VOB and binning offsets
accordingly.

This then provides us with a mechanism to fix a separate issue that
occurs on the IMX283 where an 'extra black line' is inserted by the
sensor to resolve bayer re-ordering. This extra line is undesirable in
the output and so we account for this and remove it by instead
requesting *two* additional lines, and moving two lines back into the
VOB data type. The extra line is required to maintain bayer order, and
moving the lines prevents them from being added to the captured image.

Extra modes are added based on this new simplified mode configuration
structure to match the diagrams present in the sensor datasheet.

Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
---
Kieran Bingham (23):
      media: i2c: imx283: Move imx283_mode structure definition
      media: i2c: imx283: Move scan out data to single data structure
      media: i2c: imx283: Remove horizontal_ob
      media: i2c: imx283: Move vertical_ob to scan modes
      media: i2c: imx283: Factor out vertical cropping parameters
      media: i2c: imx283: Vertical offset corrections
      media: i2c: imx283: Define recommended area
      media: i2c: imx283: Move Horizontal configuration block
      media: i2c: imx283: Constrain scope of vertical calculations
      media: i2c: imx283: Simplify v_pos determination
      media: i2c: imx283: Move binning to scan modes
      media: i2c: imx283: Move minimum exposure handling to scan modes
      media: i2c: imx283: Simplify and clamp widcut calculation
      media: i2c: imx283: Account for clamp region coordinates
      media: i2c: imx283: Crop leading lines with user clamp
      media: i2c: imx283: Reduce vertical cutting
      media: i2c: imx283: Provide Native pixel array capture mode
      media: i2c: imx283: Provide a full active pixels mode
      media: i2c: imx283: Provide an effective pixel array mode
      media: i2c: imx283: Recalculate SHR on blanking changes
      media: i2c: imx283: Fix binned mode blanking timings
      media: i2c: imx283: Update exposure range on blanking changes
      media: i2c: imx283: Simplify VFLIP control setting

Stefan Klug (2):
      media: i2c: imx283: Report correct V4L2_SEL_TGT_CROP
      media: i2c: imx283: Fix handling of unsupported mbus codes

 drivers/media/i2c/imx283.c | 600 +++++++++++++++++++++++++++++----------------
 1 file changed, 393 insertions(+), 207 deletions(-)
---
base-commit: c824345288d11e269ce41b36c105715bc2286050
change-id: 20260212-mainline-imx283-v2-695ef290871f

Best regards,
-- 
--
Kieran


^ permalink raw reply	[flat|nested] 42+ messages in thread

end of thread, other threads:[~2026-02-16 15:09 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-13 14:01 [PATCH v2 00/25] drivers: media: imx283 improvements Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 01/25] media: i2c: imx283: Report correct V4L2_SEL_TGT_CROP Kieran Bingham
2026-02-16 14:39   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 02/25] media: i2c: imx283: Fix handling of unsupported mbus codes Kieran Bingham
2026-02-16 14:41   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 03/25] media: i2c: imx283: Move imx283_mode structure definition Kieran Bingham
2026-02-16 14:41   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 04/25] media: i2c: imx283: Move scan out data to single data structure Kieran Bingham
2026-02-16 14:42   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 05/25] media: i2c: imx283: Remove horizontal_ob Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 06/25] media: i2c: imx283: Move vertical_ob to scan modes Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 07/25] media: i2c: imx283: Factor out vertical cropping parameters Kieran Bingham
2026-02-16 14:52   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 08/25] media: i2c: imx283: Vertical offset corrections Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 09/25] media: i2c: imx283: Define recommended area Kieran Bingham
2026-02-14 10:17   ` kernel test robot
2026-02-13 14:01 ` [PATCH v2 10/25] media: i2c: imx283: Move Horizontal configuration block Kieran Bingham
2026-02-16 14:53   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 11/25] media: i2c: imx283: Constrain scope of vertical calculations Kieran Bingham
2026-02-16 14:54   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 12/25] media: i2c: imx283: Simplify v_pos determination Kieran Bingham
2026-02-16 14:57   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 13/25] media: i2c: imx283: Move binning to scan modes Kieran Bingham
2026-02-16 15:00   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 14/25] media: i2c: imx283: Move minimum exposure handling " Kieran Bingham
2026-02-16 15:01   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 15/25] media: i2c: imx283: Simplify and clamp widcut calculation Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 16/25] media: i2c: imx283: Account for clamp region coordinates Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 17/25] media: i2c: imx283: Crop leading lines with user clamp Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 18/25] media: i2c: imx283: Reduce vertical cutting Kieran Bingham
2026-02-13 14:01 ` [PATCH v2 19/25] media: i2c: imx283: Provide Native pixel array capture mode Kieran Bingham
2026-02-16 15:06   ` Jai Luthra
2026-02-13 14:01 ` [PATCH v2 20/25] media: i2c: imx283: Provide a full active pixels mode Kieran Bingham
2026-02-16 15:08   ` Jai Luthra
2026-02-13 14:02 ` [PATCH v2 21/25] media: i2c: imx283: Provide an effective pixel array mode Kieran Bingham
2026-02-16 15:09   ` Jai Luthra
2026-02-13 14:02 ` [PATCH v2 22/25] media: i2c: imx283: Recalculate SHR on blanking changes Kieran Bingham
2026-02-13 14:02 ` [PATCH v2 23/25] media: i2c: imx283: Fix binned mode blanking timings Kieran Bingham
2026-02-16 14:27   ` Jai Luthra
2026-02-13 14:02 ` [PATCH v2 24/25] media: i2c: imx283: Update exposure range on blanking changes Kieran Bingham
2026-02-13 14:02 ` [PATCH v2 25/25] media: i2c: imx283: Simplify VFLIP control setting Kieran Bingham
2026-02-13 23:20   ` kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox