[libcamera-devel] [PATCH 1/5] pipeline: raspberrypi: Sensor flips should be applied unconditionally

Naushir Patuck naush at raspberrypi.com
Fri Oct 2 12:57:40 CEST 2020


Sorry, this should have not been included in this patch set :-)

Naush

On Fri, 2 Oct 2020 at 10:33, Naushir Patuck <naush at raspberrypi.com> wrote:
>
> The code in pipeline_handler::start() that applies the flips were in a
> block that was conditional on the RPi::IPA_CONFIG_SENSOR return result.
> This should be applied unconditionally.
>
> Signed-off-by: Naushir Patuck <naush at raspberrypi.com>
> ---
>  .../pipeline/raspberrypi/raspberrypi.cpp      | 26 +++++++++----------
>  1 file changed, 13 insertions(+), 13 deletions(-)
>
> diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> index d4d04c0d..1052bdce 100644
> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> @@ -1172,19 +1172,6 @@ int RPiCameraData::configureIPA(const CameraConfiguration *config)
>                                               { V4L2_CID_EXPOSURE, result.data[resultIdx++] } });
>                         sensorMetadata_ = result.data[resultIdx++];
>                 }
> -
> -               /*
> -                * Configure the H/V flip controls based on the combination of
> -                * the sensor and user transform.
> -                */
> -               if (supportsFlips_) {
> -                       ControlList ctrls(unicam_[Unicam::Image].dev()->controls());
> -                       ctrls.set(V4L2_CID_HFLIP,
> -                                 static_cast<int32_t>(!!(rpiConfig->combinedTransform_ & Transform::HFlip)));
> -                       ctrls.set(V4L2_CID_VFLIP,
> -                                 static_cast<int32_t>(!!(rpiConfig->combinedTransform_ & Transform::VFlip)));
> -                       unicam_[Unicam::Image].dev()->setControls(&ctrls);
> -               }
>         }
>
>         if (result.operation & RPi::IPA_CONFIG_SENSOR) {
> @@ -1198,6 +1185,19 @@ int RPiCameraData::configureIPA(const CameraConfiguration *config)
>                 dropFrameCount_ = result.data[resultIdx++];
>         }
>
> +       /*
> +        * Configure the H/V flip controls based on the combination of
> +        * the sensor and user transform.
> +        */
> +       if (supportsFlips_) {
> +               ControlList ctrls(unicam_[Unicam::Image].dev()->controls());
> +               ctrls.set(V4L2_CID_HFLIP,
> +                         static_cast<int32_t>(!!(rpiConfig->combinedTransform_ & Transform::HFlip)));
> +               ctrls.set(V4L2_CID_VFLIP,
> +                         static_cast<int32_t>(!!(rpiConfig->combinedTransform_ & Transform::VFlip)));
> +               unicam_[Unicam::Image].dev()->setControls(&ctrls);
> +       }
> +
>         return 0;
>  }
>
> --
> 2.25.1
>


More information about the libcamera-devel mailing list