Add support for the following formats to tpg:
 V4L2_PIX_FMT_AYUV32
 V4L2_PIX_FMT_XYUV32
 V4L2_PIX_FMT_VUYA32
 V4L2_PIX_FMT_VUYX32

Cc: Hans Verkuil <hverkuil-ci...@xs4all.nl>
Signed-off-by: Vivek Kasireddy <vivek.kasire...@intel.com>
---
 drivers/media/common/v4l2-tpg/v4l2-tpg-core.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/media/common/v4l2-tpg/v4l2-tpg-core.c 
b/drivers/media/common/v4l2-tpg/v4l2-tpg-core.c
index d9a590ae7545..fa3d40a1c935 100644
--- a/drivers/media/common/v4l2-tpg/v4l2-tpg-core.c
+++ b/drivers/media/common/v4l2-tpg/v4l2-tpg-core.c
@@ -246,6 +246,10 @@ bool tpg_s_fourcc(struct tpg_data *tpg, u32 fourcc)
        case V4L2_PIX_FMT_YUV555:
        case V4L2_PIX_FMT_YUV565:
        case V4L2_PIX_FMT_YUV32:
+       case V4L2_PIX_FMT_AYUV32:
+       case V4L2_PIX_FMT_XYUV32:
+       case V4L2_PIX_FMT_VUYA32:
+       case V4L2_PIX_FMT_VUYX32:
                tpg->color_enc = TGP_COLOR_ENC_YCBCR;
                break;
        case V4L2_PIX_FMT_YUV420M:
@@ -372,6 +376,10 @@ bool tpg_s_fourcc(struct tpg_data *tpg, u32 fourcc)
        case V4L2_PIX_FMT_ARGB32:
        case V4L2_PIX_FMT_ABGR32:
        case V4L2_PIX_FMT_YUV32:
+       case V4L2_PIX_FMT_AYUV32:
+       case V4L2_PIX_FMT_XYUV32:
+       case V4L2_PIX_FMT_VUYA32:
+       case V4L2_PIX_FMT_VUYX32:
        case V4L2_PIX_FMT_HSV32:
                tpg->twopixelsize[0] = 2 * 4;
                break;
@@ -1267,10 +1275,13 @@ static void gen_twopix(struct tpg_data *tpg,
        case V4L2_PIX_FMT_RGB32:
        case V4L2_PIX_FMT_XRGB32:
        case V4L2_PIX_FMT_HSV32:
+       case V4L2_PIX_FMT_XYUV32:
                alpha = 0;
                /* fall through */
        case V4L2_PIX_FMT_YUV32:
        case V4L2_PIX_FMT_ARGB32:
+       case V4L2_PIX_FMT_YUV32:
+       case V4L2_PIX_FMT_AYUV32:
                buf[0][offset] = alpha;
                buf[0][offset + 1] = r_y_h;
                buf[0][offset + 2] = g_u_s;
@@ -1278,9 +1289,11 @@ static void gen_twopix(struct tpg_data *tpg,
                break;
        case V4L2_PIX_FMT_BGR32:
        case V4L2_PIX_FMT_XBGR32:
+       case V4L2_PIX_FMT_VUYX32:
                alpha = 0;
                /* fall through */
        case V4L2_PIX_FMT_ABGR32:
+       case V4L2_PIX_FMT_VUYA32:
                buf[0][offset] = b_v;
                buf[0][offset + 1] = g_u_s;
                buf[0][offset + 2] = r_y_h;
-- 
2.14.5

Reply via email to