ipa: raspberrypi: Fix sensor delays for the IMX296

The IMX296 implements a 2 frame delay for exposure, gain and vertical
blanking changes. Report this in the camera helper.

Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: David Plowman <david.plowman@raspberrypi.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Naushir Patuck 2022-09-26 10:36:13 +01:00 committed by Laurent Pinchart
parent 036d26d667
commit d476f5e4e2

View file

@ -23,6 +23,7 @@ public:
double gain(uint32_t gainCode) const override;
uint32_t exposureLines(Duration exposure) const override;
Duration exposure(uint32_t exposureLines) const override;
void getDelays(int &exposureDelay, int &gainDelay, int &vblankDelay) const override;
private:
static constexpr uint32_t maxGainCode = 239;
@ -61,6 +62,14 @@ Duration CamHelperImx296::exposure(uint32_t exposureLines) const
return exposureLines * timePerLine + 14.26us;
}
void CamHelperImx296::getDelays(int &exposureDelay, int &gainDelay,
int &vblankDelay) const
{
exposureDelay = 2;
gainDelay = 2;
vblankDelay = 2;
}
static CamHelper *create()
{
return new CamHelperImx296();