summaryrefslogtreecommitdiff
path: root/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c
diff options
context:
space:
mode:
authorMikhail Rudenko <mike.rudenko@gmail.com>2022-02-06 02:33:31 +0300
committerHans Verkuil <hverkuil-cisco@xs4all.nl>2022-02-22 09:41:12 +0100
commitadccfff098f59f47cbf4bcbfdf8732832419dcaf (patch)
tree4bb67e3cae0159100cfd7833bde51cd9806b86ab /drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c
parent67e4550ecd6164bfbdff54c169e5bbf9ccfaf14d (diff)
media: sun6i-csi: fix colorspace in sun6i_video_try_fmt()
With gstreamer 1.19.3 all attempts to capture video in YUV formats on our Allwinner H3-based custom board with an ov5640 sensor result in pipeline crashes with the following messages: Device '/dev/video0' does not support 2:0:0:0 colorimetry Additional debug info: Device wants 2:0:0:0 colorimetry Fix this by setting the correct colorspace in sun6i_video_try_fmt(). Signed-off-by: Mikhail Rudenko <mike.rudenko@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Diffstat (limited to 'drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c')
-rw-r--r--drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c b/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c
index 607a8d39fbe2..682c26536034 100644
--- a/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c
+++ b/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c
@@ -368,7 +368,11 @@ static int sun6i_video_try_fmt(struct sun6i_video *video,
if (pixfmt->field == V4L2_FIELD_ANY)
pixfmt->field = V4L2_FIELD_NONE;
- pixfmt->colorspace = V4L2_COLORSPACE_RAW;
+ if (pixfmt->pixelformat == V4L2_PIX_FMT_JPEG)
+ pixfmt->colorspace = V4L2_COLORSPACE_JPEG;
+ else
+ pixfmt->colorspace = V4L2_COLORSPACE_SRGB;
+
pixfmt->ycbcr_enc = V4L2_YCBCR_ENC_DEFAULT;
pixfmt->quantization = V4L2_QUANTIZATION_DEFAULT;
pixfmt->xfer_func = V4L2_XFER_FUNC_DEFAULT;