[libcamera-devel] [PATCH v2 2/2] pipeline: raspberrypi: Simplify calculation of sensor's native Bayer order

Naushir Patuck naush at raspberrypi.com
Mon Jan 17 15:58:05 CET 2022


Hi David,

Thank you for your patch.

On Thu, 13 Jan 2022 at 14:16, David Plowman <david.plowman at raspberrypi.com>
wrote:

> Now that the sensor is defined to list mbus codes using its native
> (untransformed) Bayer order, the method of obtaining it can be
> simplified. We don't have to try and reset the flips, we just use the
> value directly from the sensor.
>
> Signed-off-by: David Plowman <david.plowman at raspberrypi.com>
>

Reviewed-by: Naushir Patuck <naush at raspberrypi.com>


> ---
>  src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 9 ++-------
>  1 file changed, 2 insertions(+), 7 deletions(-)
>
> diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> index 49d7ff23..79cb75c6 100644
> --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> @@ -1279,8 +1279,8 @@ int PipelineHandlerRPi::registerCamera(MediaDevice
> *unicam, MediaDevice *isp, Me
>          * Thirdly, what is the "native" Bayer order, when no transforms
> are
>          * applied?
>          *
> -        * As part of answering the final question, we reset the camera to
> -        * no transform at all.
> +        * We note that the sensor's cached list of supported formats is
> +        * already in the "native" order, with any flips having been
> undone.
>          */
>         const V4L2Subdevice *sensor = data->sensor_->device();
>         const struct v4l2_query_ext_ctrl *hflipCtrl =
> sensor->controlInfo(V4L2_CID_HFLIP);
> @@ -1288,11 +1288,6 @@ int PipelineHandlerRPi::registerCamera(MediaDevice
> *unicam, MediaDevice *isp, Me
>                 /* We assume it will support vflips too... */
>                 data->supportsFlips_ = true;
>                 data->flipsAlterBayerOrder_ = hflipCtrl->flags &
> V4L2_CTRL_FLAG_MODIFY_LAYOUT;
> -
> -               ControlList ctrls(data->sensor_->controls());
> -               ctrls.set(V4L2_CID_HFLIP, 0);
> -               ctrls.set(V4L2_CID_VFLIP, 0);
> -               data->setSensorControls(ctrls);
>         }
>
>         /* Look for a valid Bayer format. */
> --
> 2.30.2
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.libcamera.org/pipermail/libcamera-devel/attachments/20220117/5c103200/attachment-0001.htm>


More information about the libcamera-devel mailing list