aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/ivtv
diff options
context:
space:
mode:
authorIan Armstrong <ian@iarmst.demon.co.uk>2008-10-06 02:06:08 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-10-13 07:08:24 -0400
commitec9faa1cfac1dd64a2a865dc7c577f3d483656bd (patch)
tree8f50ce6b5637fe28b75ec157f698066910fc0486 /drivers/media/video/ivtv
parent4ee0e42b31b282d0d0bb11effbbeb0610ee76d09 (diff)
V4L/DVB (9165): ivtv: V4L2_FBUF_FLAG_OVERLAY status fix
When the framebuffer format was queried via VIDIOC_G_FBUF, V4L2_FBUF_FLAG_OVERLAY would only be correctly returned for certain screen depths. Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/ivtv')
-rw-r--r--drivers/media/video/ivtv/ivtv-ioctl.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/media/video/ivtv/ivtv-ioctl.c b/drivers/media/video/ivtv/ivtv-ioctl.c
index 3d0013bdd1f..3c2628a6301 100644
--- a/drivers/media/video/ivtv/ivtv-ioctl.c
+++ b/drivers/media/video/ivtv/ivtv-ioctl.c
@@ -1363,6 +1363,9 @@ static int ivtv_g_fbuf(struct file *file, void *fh, struct v4l2_framebuffer *fb)
1363 if (itv->osd_global_alpha_state) 1363 if (itv->osd_global_alpha_state)
1364 fb->flags |= V4L2_FBUF_FLAG_GLOBAL_ALPHA; 1364 fb->flags |= V4L2_FBUF_FLAG_GLOBAL_ALPHA;
1365 1365
1366 if (yi->track_osd)
1367 fb->flags |= V4L2_FBUF_FLAG_OVERLAY;
1368
1366 pixfmt &= 7; 1369 pixfmt &= 7;
1367 1370
1368 /* no local alpha for RGB565 or unknown formats */ 1371 /* no local alpha for RGB565 or unknown formats */
@@ -1382,8 +1385,6 @@ static int ivtv_g_fbuf(struct file *file, void *fh, struct v4l2_framebuffer *fb)
1382 else 1385 else
1383 fb->flags |= V4L2_FBUF_FLAG_LOCAL_ALPHA; 1386 fb->flags |= V4L2_FBUF_FLAG_LOCAL_ALPHA;
1384 } 1387 }
1385 if (yi->track_osd)
1386 fb->flags |= V4L2_FBUF_FLAG_OVERLAY;
1387 1388
1388 return 0; 1389 return 0;
1389} 1390}