Hi Dave, Thank you for the patch. On Wed, Nov 20, 2024 at 07:17:04PM +0000, Dave Stevenson wrote: > Reviewing the datasheets, register 0x3011 is meant to be 0x02 on imx327 > and 0x00 on imx290. > > Move it out of the common registers, and set it appropriately in the > sensor specific sections. (Included for imx290 to be explicit, rather > than relying on the default value). > > Fixes: 2d41947ec2c0 ("media: i2c: imx290: Add support for imx327 variant") > Signed-off-by: Dave Stevenson <dave.stevenson@xxxxxxxxxxxxxxx> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > drivers/media/i2c/imx290.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/i2c/imx290.c b/drivers/media/i2c/imx290.c > index da654deb444a..7d794a509670 100644 > --- a/drivers/media/i2c/imx290.c > +++ b/drivers/media/i2c/imx290.c > @@ -268,7 +268,6 @@ static const struct cci_reg_sequence imx290_global_init_settings[] = { > { IMX290_WINWV, 1097 }, > { IMX290_XSOUTSEL, IMX290_XSOUTSEL_XVSOUTSEL_VSYNC | > IMX290_XSOUTSEL_XHSOUTSEL_HSYNC }, > - { CCI_REG8(0x3011), 0x02 }, > { CCI_REG8(0x3012), 0x64 }, > { CCI_REG8(0x3013), 0x00 }, > }; > @@ -276,6 +275,7 @@ static const struct cci_reg_sequence imx290_global_init_settings[] = { > static const struct cci_reg_sequence imx290_global_init_settings_290[] = { > { CCI_REG8(0x300f), 0x00 }, > { CCI_REG8(0x3010), 0x21 }, > + { CCI_REG8(0x3011), 0x00 }, > { CCI_REG8(0x3016), 0x09 }, > { CCI_REG8(0x3070), 0x02 }, > { CCI_REG8(0x3071), 0x11 }, > @@ -329,6 +329,7 @@ static const struct cci_reg_sequence xclk_regs[][IMX290_NUM_CLK_REGS] = { > }; > > static const struct cci_reg_sequence imx290_global_init_settings_327[] = { > + { CCI_REG8(0x3011), 0x02 }, > { CCI_REG8(0x309e), 0x4A }, > { CCI_REG8(0x309f), 0x4A }, > { CCI_REG8(0x313b), 0x61 }, -- Regards, Laurent Pinchart