Hello, This patch series contains miscellaneous cleanups and improvements for the imx290 driver. The most notable changes are usage of the V4L2 subdev active state (11/15) and runtime PM autosuspend (13/15). Please see invididual patches for details. Laurent Pinchart (15): media: i2c: imx290: Group functions in sections media: i2c: imx290: Factor out subdev init and cleanup to functions media: i2c: imx290: Factor out control update code to a function media: i2c: imx290: Access link_freq_index directly media: i2c: imx290: Pass format and mode to imx290_calc_pixel_rate() media: i2c: imx290: Compute pixel rate and blanking in one place media: i2c: imx290: Factor out black level setting to a function media: i2c: imx290: Factor out DT parsing to separate function media: i2c: imx290: Use dev_err_probe() media: i2c: imx290: Factor out clock initialization to separate function media: i2c: imx290: Use V4L2 subdev active state media: i2c: imx290: Rename, extend and expand usage of imx290_pixfmt media: i2c: imx290: Use runtime PM autosuspend media: i2c: imx290: Configure data lanes at start time media: i2c: imx290: Simplify imx290_set_data_lanes() drivers/media/i2c/imx290.c | 1007 +++++++++++++++++++----------------- 1 file changed, 523 insertions(+), 484 deletions(-) -- Regards, Laurent Pinchart