media: imx: imx7-media-csi: Support clamping Y10 and Y12 to Y8

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>
This commit is contained in:
Laurent Pinchart 2020-03-10 17:06:33 +01:00 committed by Mauro Carvalho Chehab
parent b1f240eeef
commit 2a9c226da9
1 changed files with 8 additions and 0 deletions

View 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;