Hi Dave, Am Mittwoch, 20. November 2024, 20:17:03 CET schrieb Dave Stevenson: > The imx327 only supports up to 29.4dB of analogue gain, vs > the imx290 going up to 30dB. Both are in 0.3dB steps. While I agree for 30dB on imx290, my (maybe outdated) Rev0.2 datasheet says up to 27dB in 0.3dB steps. Despite that this change looks good. Best regards, Alexander > As we now have model specific config, fix this mismatch, > and delete the comment referencing it. > > Signed-off-by: Dave Stevenson <dave.stevenson@xxxxxxxxxxxxxxx> > Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > drivers/media/i2c/imx290.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/drivers/media/i2c/imx290.c b/drivers/media/i2c/imx290.c > index ee698c99001d..da654deb444a 100644 > --- a/drivers/media/i2c/imx290.c > +++ b/drivers/media/i2c/imx290.c > @@ -176,6 +176,7 @@ struct imx290_model_info { > enum imx290_colour_variant colour_variant; > const struct cci_reg_sequence *init_regs; > size_t init_regs_num; > + unsigned int max_analog_gain; > const char *name; > }; > > @@ -876,14 +877,10 @@ static int imx290_ctrl_init(struct imx290 *imx290) > * up to 72.0dB (240) add further digital gain. Limit the range to > * analog gain only, support for digital gain can be added separately > * if needed. > - * > - * The IMX327 and IMX462 are largely compatible with the IMX290, but > - * have an analog gain range of 0.0dB to 29.4dB and 42dB of digital > - * gain. When support for those sensors gets added to the driver, the > - * gain control should be adjusted accordingly. > */ > v4l2_ctrl_new_std(&imx290->ctrls, &imx290_ctrl_ops, > - V4L2_CID_ANALOGUE_GAIN, 0, 100, 1, 0); > + V4L2_CID_ANALOGUE_GAIN, 0, > + imx290->model->max_analog_gain, 1, 0); > > /* > * Correct range will be determined through imx290_ctrl_update setting > @@ -1441,18 +1438,21 @@ static const struct imx290_model_info imx290_models[] = { > .colour_variant = IMX290_VARIANT_COLOUR, > .init_regs = imx290_global_init_settings_290, > .init_regs_num = ARRAY_SIZE(imx290_global_init_settings_290), > + .max_analog_gain = 100, > .name = "imx290", > }, > [IMX290_MODEL_IMX290LLR] = { > .colour_variant = IMX290_VARIANT_MONO, > .init_regs = imx290_global_init_settings_290, > .init_regs_num = ARRAY_SIZE(imx290_global_init_settings_290), > + .max_analog_gain = 100, > .name = "imx290", > }, > [IMX290_MODEL_IMX327LQR] = { > .colour_variant = IMX290_VARIANT_COLOUR, > .init_regs = imx290_global_init_settings_327, > .init_regs_num = ARRAY_SIZE(imx290_global_init_settings_327), > + .max_analog_gain = 98, > .name = "imx327", > }, > }; > > -- TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany Amtsgericht München, HRB 105018 Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider http://www.tq-group.com/