From d476f5e4e2c3d57822b0d1f26718e38361e4db41 Mon Sep 17 00:00:00 2001 From: Naushir Patuck Date: Mon, 26 Sep 2022 10:36:13 +0100 Subject: 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 Reviewed-by: Jacopo Mondi Reviewed-by: David Plowman Signed-off-by: Laurent Pinchart --- src/ipa/raspberrypi/cam_helper_imx296.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/ipa/raspberrypi/cam_helper_imx296.cpp b/src/ipa/raspberrypi/cam_helper_imx296.cpp index ab1d157a..09f828ea 100644 --- a/src/ipa/raspberrypi/cam_helper_imx296.cpp +++ b/src/ipa/raspberrypi/cam_helper_imx296.cpp @@ -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(); -- cgit v1.2.1