This series adds to the functionality of the Omnivision OV9282 driver to make it usable with libcamera. Tested on a Raspberry Pi with OV9281 sensor (same as OV9282 but with alternate CRA on the optics) Changes in v2 Collected the relevant R-b tags from Jacopo (many thanks) Patch 5 - replaced macro OV9282_NUM_MODES with direct use of ARRAY_SIZE (Sakari) Patch 6 - reworded commit text (Jacopo) Patch 7 - correct typo (250 instead of 151) (Jacopo) Patch 8 - moved setting CSI2 clock mode from streamon to power on (Sakari) Patch 10 - double empty line removed (Jacopo) No response on patch 11 with regard policy on whether V4L2_CID_VFLIP & HFLIP should be with regard sensor native orientation or initially submitted driver, so I've left it as is. No response on patch 16 as to whether all sensor drivers with controls should have V4L2_SUBDEV_FL_HAS_EVENTS and subscribe_event/unsubscribe_event handlers, so again it's unchanged. It fixes a v4l2-compliance failure and therefore would appear to be valid. Dave Stevenson (16): media: i2c: ov9282: Remove duplication of registers media: i2c: ov9282: Split registers into common and mode specific media: i2c: ov9282: Remove format code from the mode media: i2c: ov9282: Remove pixel rate from mode definition media: i2c: ov9281: Support more than 1 mode. media: i2c: ov9282: Correct HTS register for configured pixel rate media: i2c: ov9282: Reduce vblank_min values based on testing media: i2c: ov9282: Add selection for CSI2 clock mode media: i2c: ov9282: Add the properties from fwnode media: i2c: ov9282: Action CID_VBLANK when set. media: i2c: ov9282: Add HFLIP and VFLIP support media: i2c: ov9282: Make V4L2_CID_HBLANK r/w media: i2c: ov9282: Add selection API calls for cropping info media: i2c: ov9282: Add support for 1280x800 and 640x400 modes media: i2c: ov9282: Add support for 8bit readout media: i2c: ov9282: Support event handlers drivers/media/i2c/ov9282.c | 563 ++++++++++++++++++++++++++++++------- 1 file changed, 456 insertions(+), 107 deletions(-) -- 2.34.1