Quoting Dave Stevenson (2024-12-09 14:55:45) > The datasheet lists that "Maximum exposure time is frame > length -25 row periods, where frame length is set by > registers {0x380E, 0x380F}". > However this driver had OV9282_EXPOSURE_OFFSET set to 12 > which allowed that restriction to be violated, and would > result in very under-exposed images. > > Correct the offset. > > Fixes: 14ea315bbeb7 ("media: i2c: Add ov9282 camera sensor driver") > Signed-off-by: Dave Stevenson <dave.stevenson@xxxxxxxxxxxxxxx> > --- > This was picked up by one of our users noting that images were > going dark for captures through libcamera. libcamera was resetting > vblank and hblank to minimums for the capture, and that put us in > the situation where it broke the datasheet requirement for > exposure being at least 25 lines shorter than the frame length. > --- > drivers/media/i2c/ov9282.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/media/i2c/ov9282.c b/drivers/media/i2c/ov9282.c > index 9f52af6f047f..87e5d7ce5a47 100644 > --- a/drivers/media/i2c/ov9282.c > +++ b/drivers/media/i2c/ov9282.c > @@ -40,7 +40,7 @@ > /* Exposure control */ > #define OV9282_REG_EXPOSURE 0x3500 > #define OV9282_EXPOSURE_MIN 1 > -#define OV9282_EXPOSURE_OFFSET 12 > +#define OV9282_EXPOSURE_OFFSET 25 As I've looked this up in the datasheet: Reviewed-by: Kieran Bingham <kieran.bingham@xxxxxxxxxxxxxxxx> > #define OV9282_EXPOSURE_STEP 1 > #define OV9282_EXPOSURE_DEFAULT 0x0282 > > > --- > base-commit: 40384c840ea1944d7c5a392e8975ed088ecf0b37 > change-id: 20241209-media-ov9282-fix-a1ec012f5272 > > Best regards, > -- > Dave Stevenson <dave.stevenson@xxxxxxxxxxxxxxx> >