mbox series

[v1,00/12] media: i2c: imx219: Miscellaneous cleanups and improvements

Message ID 20230815182431.18409-1-laurent.pinchart@ideasonboard.com (mailing list archive)
Headers show
Series media: i2c: imx219: Miscellaneous cleanups and improvements | expand

Message

Laurent Pinchart Aug. 15, 2023, 6:24 p.m. UTC
Hello,

This patch series is a collection of miscellaneous cleanups and
improvements to the imx219 driver.

Most notably, the series starts with converting the driver to the new
CCI helpers ([1]) in 01/12. Unlike the IMX290, IMX296, IMX297 and IMX327
that have little-endian register values, this sensor adheres to the CCI
specification, so the conversion was possible. It caused a regression
that I had a bit of trouble tracking though, which showed that merging
conversion to the CCI helpers without testing would be dangerous.

Patch 04/12 fixes what I believe is an issue with the test pattern
generator configuration in 640x480 mode, and should be the only
functional change in the series.

For details about other patches, please see their individual commit
logs.

The series depends on two fixes for the imx219 driver ([2]) that should
make it to v6.6, while the 12 patches here are v6.7 material.

The changes have been tested on a Raspberry Pi 4, with all the modes
supproted by the driver.

[1] https://lore.kernel.org/linux-media/20230627125109.52354-1-hdegoede@redhat.com/
[2] https://lore.kernel.org/linux-media/20230814193435.24158-1-laurent.pinchart@ideasonboard.com

Laurent Pinchart (12):
  media: i2c: imx219: Convert to CCI register access helpers
  media: i2c: imx219: Drop unused macros
  media: i2c: imx219: Replace register addresses with macros
  media: i2c: imx219: Fix test pattern window for 640x480 mode
  media: i2c: imx219: Set mode registers programmatically
  media: i2c: imx219: Merge format and binning setting functions
  media: i2c: imx219: Initialize ycbcr_enc
  media: i2c: imx219: Use active crop rectangle to configure registers
  media: i2c: imx219: Infer binning settings from format and crop
  media: i2c: imx219: Access height from active format in
    imx219_set_ctrl
  media: i2c: imx219: Don't store the current mode in the imx219
    structure
  media: i2c: imx219: Drop IMX219_VTS_* macros

 drivers/media/i2c/Kconfig  |   1 +
 drivers/media/i2c/imx219.c | 668 +++++++++++++------------------------
 2 files changed, 241 insertions(+), 428 deletions(-)