Hello, This patch series gathers miscellaneous improvements for the imx290 driver. The most notable changes on the kernel side is patch 08/20 that simplifies register access, and on the userspace API side patches 15/20, 16/20 and 19/20 that extend the driver with controls and selection rectangles required by libcamera. Laurent Pinchart (20): media: dt-bindings: Convert imx290.txt to YAML media: i2c: imx290: Use device lock for the control handler media: i2c: imx290: Print error code when I2C transfer fails media: i2c: imx290: Replace macro with explicit ARRAY_SIZE() media: i2c: imx290: Drop imx290_write_buffered_reg() media: i2c: imx290: Drop regmap cache media: i2c: imx290: Specify HMAX values in decimal media: i2c: imx290: Support variable-sized registers media: i2c: imx290: Correct register sizes media: i2c: imx290: Simplify error handling when writing registers media: i2c: imx290: Define more register macros media: i2c: imx290: Add exposure time control media: i2c: imx290: Fix max gain value media: i2c: imx290: Split control initialization to separate function media: i2c: imx290: Implement HBLANK and VBLANK controls media: i2c: imx290: Create controls for fwnode properties media: i2c: imx290: Move registers with fixed value to init array media: i2c: imx290: Factor out format retrieval to separate function media: i2c: imx290: Add crop selection targets support media: i2c: imx290: Replace GAIN control with ANALOGUE_GAIN .../devicetree/bindings/media/i2c/imx290.txt | 57 -- .../bindings/media/i2c/sony,imx290.yaml | 129 +++ MAINTAINERS | 2 +- drivers/media/i2c/imx290.c | 784 ++++++++++-------- 4 files changed, 591 insertions(+), 381 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/i2c/imx290.txt create mode 100644 Documentation/devicetree/bindings/media/i2c/sony,imx290.yaml -- Regards, Laurent Pinchart