]> pilppa.com Git - linux-2.6-omap-h63xx.git/commitdiff
V4L/DVB (9237): Add uyvy pixel format support to vivi
authorMagnus Damm <damm@igel.co.jp>
Tue, 14 Oct 2008 15:47:25 +0000 (12:47 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 17 Oct 2008 20:25:01 +0000 (17:25 -0300)
This patch simply adds UYVY pixel format support to the vivi driver.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/vivi.c

index 523f78c48472300cb9b046461be6577c35d489b7..2a6ebc126c09ad6c7aa18acf271a516e740ed610 100644 (file)
@@ -134,6 +134,11 @@ static struct vivi_fmt formats[] = {
                .fourcc   = V4L2_PIX_FMT_YUYV,
                .depth    = 16,
        },
+       {
+               .name     = "4:2:2, packed, UYVY",
+               .fourcc   = V4L2_PIX_FMT_UYVY,
+               .depth    = 16,
+       },
 };
 
 static struct vivi_fmt *get_format(struct v4l2_format *f)
@@ -282,6 +287,20 @@ static void gen_twopix(struct vivi_fh *fh, unsigned char *buf, int colorpos)
                                break;
                        }
                        break;
+               case V4L2_PIX_FMT_UYVY:
+                       switch (color) {
+                       case 1:
+                       case 3:
+                               *p = r_y;
+                               break;
+                       case 0:
+                               *p = g_u;
+                               break;
+                       case 2:
+                               *p = b_v;
+                               break;
+                       }
+                       break;
                }
        }
 }
@@ -756,6 +775,7 @@ static int vidioc_s_fmt_vid_cap(struct file *file, void *priv,
 
                switch (fh->fmt->fourcc) {
                case V4L2_PIX_FMT_YUYV:
+               case V4L2_PIX_FMT_UYVY:
                        is_yuv = 1;
                        break;
                }