mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-22 17:01:14 +00:00
V4L/DVB (5403): Set vsync_field correctly in ivtv.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
43d0dfcfc6
commit
037c86c533
1 changed files with 7 additions and 3 deletions
|
@ -1314,9 +1314,13 @@ static int ivtv_ivtv_ioctls(struct file *filp, unsigned int cmd, void *arg)
|
|||
ev->type = VIDEO_EVENT_DECODER_STOPPED;
|
||||
else if (test_and_clear_bit(IVTV_F_I_EV_VSYNC, &itv->i_flags)) {
|
||||
ev->type = VIDEO_EVENT_VSYNC;
|
||||
ev->timestamp = test_bit(IVTV_F_I_EV_VSYNC_FIELD, &itv->i_flags) ?
|
||||
1 : 0;
|
||||
clear_bit(IVTV_F_I_EV_VSYNC_ENABLED, &itv->i_flags);
|
||||
ev->u.vsync_field = test_bit(IVTV_F_I_EV_VSYNC_FIELD, &itv->i_flags) ?
|
||||
VIDEO_VSYNC_FIELD_ODD : VIDEO_VSYNC_FIELD_EVEN;
|
||||
if (itv->output_mode == OUT_UDMA_YUV &&
|
||||
(itv->yuv_info.lace_mode & IVTV_YUV_MODE_MASK) ==
|
||||
IVTV_YUV_MODE_PROGRESSIVE) {
|
||||
ev->u.vsync_field = VIDEO_VSYNC_FIELD_PROGRESSIVE;
|
||||
}
|
||||
}
|
||||
if (ev->type)
|
||||
return 0;
|
||||
|
|
Loading…
Reference in a new issue