diff options
author | Naushir Patuck <naush@raspberrypi.com> | 2023-08-24 14:19:08 +0100 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2023-08-29 10:39:13 +0300 |
commit | 26ac1a8e3fc52cb2035ad88b7d22f034a68f50c7 (patch) | |
tree | 0866ebe0eda5d7d155dcab00b5b7b0c32007028d | |
parent | 960d0c1e19feaf310321c906e14bd5410c6be629 (diff) |
ipa: rpi: imx290: Hide one frame on startup
The imx290 produces a single unusable frame on startup and mode switch.
This is signalled to the IPA in the mode switch case, but not the
startup case. Fix this.
Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
Reviewed-by: David Plowman <david.plowman@raspberrypi.com>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r-- | src/ipa/rpi/cam_helper/cam_helper_imx290.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/ipa/rpi/cam_helper/cam_helper_imx290.cpp b/src/ipa/rpi/cam_helper/cam_helper_imx290.cpp index 7d6f5b54..d98b51cd 100644 --- a/src/ipa/rpi/cam_helper/cam_helper_imx290.cpp +++ b/src/ipa/rpi/cam_helper/cam_helper_imx290.cpp @@ -19,6 +19,7 @@ public: double gain(uint32_t gainCode) const override; void getDelays(int &exposureDelay, int &gainDelay, int &vblankDelay, int &hblankDelay) const override; + unsigned int hideFramesStartup() const override; unsigned int hideFramesModeSwitch() const override; private: @@ -54,6 +55,12 @@ void CamHelperImx290::getDelays(int &exposureDelay, int &gainDelay, hblankDelay = 2; } +unsigned int CamHelperImx290::hideFramesStartup() const +{ + /* On startup, we seem to get 1 bad frame. */ + return 1; +} + unsigned int CamHelperImx290::hideFramesModeSwitch() const { /* After a mode switch, we seem to get 1 bad frame. */ |