Skip to content

Commit

Permalink
V4L/DVB (8090): ivtv: yuv decoder lock fix (2)
Browse files Browse the repository at this point in the history
The IVTV_IOC_DMA_FRAME ioctl fails to correctly 'start' the decoder. Although
yuv output will be correct, some functions which should be disabled while the
decoder is in use remain enabled. This can result in hardware registers being
corrupted, causing problems with the mpeg decoder. This patch ensures the
decoder 'start' sequence is called, disabling these functions until the
device is closed.

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@infradead.org>
  • Loading branch information
Ian Armstrong authored and Mauro Carvalho Chehab committed Jul 20, 2008
1 parent 03c2808 commit 42b03fe
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/media/video/ivtv/ivtv-ioctl.c
Original file line number Diff line number Diff line change
Expand Up @@ -1539,7 +1539,7 @@ static int ivtv_decoder_ioctls(struct file *filp, unsigned int cmd, void *arg)
return -EINVAL;
if (itv->output_mode == OUT_UDMA_YUV && args->y_source == NULL)
return 0;
if (ivtv_claim_stream(id, id->type)) {
if (ivtv_start_decoding(id, id->type)) {
return -EBUSY;
}
if (ivtv_set_output_mode(itv, OUT_UDMA_YUV) != OUT_UDMA_YUV) {
Expand Down

0 comments on commit 42b03fe

Please sign in to comment.