media: imx: imx7-media-csi: Support clamping Y10 and Y12 to Y8
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Tue, 10 Mar 2020 16:06:33 +0000 (17:06 +0100)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Thu, 12 Mar 2020 16:32:20 +0000 (17:32 +0100)
10-bit and 12-bit greyscale input data to the CSI can be written as
8-bit data to memory. Support this.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Rui Miguel Silva <rmfrfs@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/staging/media/imx/imx7-media-csi.c

index a7771dd..acbdffb 100644 (file)
@@ -804,6 +804,14 @@ static int imx7_csi_configure(struct imx7_csi *csi)
        case V4L2_PIX_FMT_YUYV:
                cr18 |= BIT_MIPI_DATA_FORMAT_YUV422_8B;
                break;
+       case V4L2_PIX_FMT_GREY:
+               if (in_code == MEDIA_BUS_FMT_Y8_1X8)
+                       cr18 |= BIT_MIPI_DATA_FORMAT_RAW8;
+               else if (in_code == MEDIA_BUS_FMT_Y10_1X10)
+                       cr18 |= BIT_MIPI_DATA_FORMAT_RAW10;
+               else
+                       cr18 |= BIT_MIPI_DATA_FORMAT_RAW12;
+               break;
        case V4L2_PIX_FMT_Y10:
                cr18 |= BIT_MIPI_DATA_FORMAT_RAW10;
                cr1 |= BIT_PIXEL_BIT;