From d86c8e05a7108ab5294ecc80876faacb9ee8cf29 Mon Sep 17 00:00:00 2001 From: Ondrej Jirman Date: Sat, 8 Dec 2018 06:09:20 +0100 Subject: [PATCH 144/478] media: sun6i-csi: Add support for RGB565 and RGB555 Signed-off-by: Ondrej Jirman --- drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c | 5 +++++ drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.h | 1 + drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c | 2 ++ 3 files changed, 8 insertions(+) diff --git a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c index 27935f1e9555..c49ed480bed5 100644 --- a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c +++ b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.c @@ -124,6 +124,9 @@ bool sun6i_csi_is_format_supported(struct sun6i_csi *csi, case V4L2_PIX_FMT_VYUY: return (mbus_code == MEDIA_BUS_FMT_VYUY8_2X8); + case V4L2_PIX_FMT_RGB555: + return mbus_code == MEDIA_BUS_FMT_RGB555_2X8_PADHI_LE; + case V4L2_PIX_FMT_HM12: case V4L2_PIX_FMT_NV12: case V4L2_PIX_FMT_NV21: @@ -509,6 +512,8 @@ static void sun6i_csi_set_window(struct sun6i_csi_dev *sdev) case V4L2_PIX_FMT_YVYU: case V4L2_PIX_FMT_UYVY: case V4L2_PIX_FMT_VYUY: + case V4L2_PIX_FMT_RGB565: + case V4L2_PIX_FMT_RGB555: dev_dbg(sdev->dev, "Horizontal length should be 2 times of width for packed YUV formats!\n"); hor_len = width * 2; diff --git a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.h b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.h index c626821aaedb..b00eaab85891 100644 --- a/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.h +++ b/drivers/media/platform/sunxi/sun6i-csi/sun6i_csi.h @@ -115,6 +115,7 @@ static inline int sun6i_csi_get_bpp(unsigned int pixformat) case V4L2_PIX_FMT_YVYU: case V4L2_PIX_FMT_UYVY: case V4L2_PIX_FMT_VYUY: + case V4L2_PIX_FMT_RGB555: case V4L2_PIX_FMT_NV16: case V4L2_PIX_FMT_NV61: case V4L2_PIX_FMT_YUV422P: diff --git a/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c b/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c index 07b2161392d2..f5feb4286049 100644 --- a/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c +++ b/drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c @@ -48,6 +48,8 @@ static const u32 supported_pixformats[] = { V4L2_PIX_FMT_YVYU, V4L2_PIX_FMT_UYVY, V4L2_PIX_FMT_VYUY, + V4L2_PIX_FMT_RGB565, + V4L2_PIX_FMT_RGB555, V4L2_PIX_FMT_HM12, V4L2_PIX_FMT_NV12, V4L2_PIX_FMT_NV21, -- 2.35.3