[libcamera-devel] [PATCH] ipa: rpi: imx290: Hide one frame on startup

David Plowman david.plowman at raspberrypi.com
Fri Aug 25 11:15:15 CEST 2023


Hi Naush

Thanks for the patch!

On Thu, 24 Aug 2023 at 14:19, Naushir Patuck via libcamera-devel
<libcamera-devel at lists.libcamera.org> wrote:
>
> 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 at raspberrypi.com>

Reviewed-by: David Plowman <david.plowman at raspberrypi.com>

Thanks!
David

> ---
>  src/ipa/rpi/cam_helper/cam_helper_imx290.cpp | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/src/ipa/rpi/cam_helper/cam_helper_imx290.cpp b/src/ipa/rpi/cam_helper/cam_helper_imx290.cpp
> index 7d6f5b549a73..d98b51cd56b3 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. */
> --
> 2.34.1
>


More information about the libcamera-devel mailing list