aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Armstrong <ian@iarmst.demon.co.uk>2008-06-21 11:09:46 -0300
committerMauro Carvalho Chehab <mchehab@infradead.org>2008-07-20 07:11:18 -0300
commit42b03fe16fe8cc2cd6575e25ed1872fd6f5da56f (patch)
tree4588b977376e16691559f0f839559d918907bc08
parent03c2808503b102971226007070c57410267d0b9d (diff)
V4L/DVB (8090): ivtv: yuv decoder lock fix (2)
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>
-rw-r--r--drivers/media/video/ivtv/ivtv-ioctl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/video/ivtv/ivtv-ioctl.c b/drivers/media/video/ivtv/ivtv-ioctl.c
index b1cda6cd558..aa222056dd4 100644
--- a/drivers/media/video/ivtv/ivtv-ioctl.c
+++ b/drivers/media/video/ivtv/ivtv-ioctl.c
@@ -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) {