summaryrefslogtreecommitdiff
path: root/src/libcamera/pipeline/ipu3
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-03-17 01:33:58 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-03-19 17:14:21 +0200
commit6c34a2d386ac99d3732147fe65d0a2cb69ec3856 (patch)
tree26fa244902584e31f395e3261a4778755fcf48ae /src/libcamera/pipeline/ipu3
parent6015d9702e2920644347d5f497c230f3a7133105 (diff)
libcamera: v4l2_videodevice: Make V4L2PixelFormat constructor explicit
To achieve the goal of preventing unwanted conversion between a DRM and a V4L2 FourCC, make the V4L2PixelFormat constructor that takes an integer value explicit. All users of V4L2 pixel formats flagged by the compiler are fixed. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src/libcamera/pipeline/ipu3')
-rw-r--r--src/libcamera/pipeline/ipu3/ipu3.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index e9085f2f..1b44460e 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -121,7 +121,7 @@ public:
int start();
int stop();
- static int mediaBusToFormat(unsigned int code);
+ static V4L2PixelFormat mediaBusToFormat(unsigned int code);
V4L2VideoDevice *output_;
V4L2Subdevice *csi2_;
@@ -1447,19 +1447,19 @@ int CIO2Device::stop()
return output_->streamOff();
}
-int CIO2Device::mediaBusToFormat(unsigned int code)
+V4L2PixelFormat CIO2Device::mediaBusToFormat(unsigned int code)
{
switch (code) {
case MEDIA_BUS_FMT_SBGGR10_1X10:
- return V4L2_PIX_FMT_IPU3_SBGGR10;
+ return V4L2PixelFormat(V4L2_PIX_FMT_IPU3_SBGGR10);
case MEDIA_BUS_FMT_SGBRG10_1X10:
- return V4L2_PIX_FMT_IPU3_SGBRG10;
+ return V4L2PixelFormat(V4L2_PIX_FMT_IPU3_SGBRG10);
case MEDIA_BUS_FMT_SGRBG10_1X10:
- return V4L2_PIX_FMT_IPU3_SGRBG10;
+ return V4L2PixelFormat(V4L2_PIX_FMT_IPU3_SGRBG10);
case MEDIA_BUS_FMT_SRGGB10_1X10:
- return V4L2_PIX_FMT_IPU3_SRGGB10;
+ return V4L2PixelFormat(V4L2_PIX_FMT_IPU3_SRGGB10);
default:
- return -EINVAL;
+ return {};
}
}