Commit d5709a0e authored by figo.zhang's avatar figo.zhang Committed by Mauro Carvalho Chehab

V4L/DVB (11990): saa7134-video.c: fix the block bug

when re-open or re-start (video_streamon), the q->curr would not be NULL in saa7134_buffer_queue(),
and all the qbuf will add to q->queue list,no one to do activate to start DMA,and then no interrupt
would happened,so it will be block.

In VIDEOBUF_NEEDS_INIT state, initialize the curr pointer to be NULL in the buffer_prepare().
Signed-off-by: default avatarFigo.zhang <figo.zhang@kolorific.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 040d4cbf
...@@ -1057,6 +1057,7 @@ static int buffer_prepare(struct videobuf_queue *q, ...@@ -1057,6 +1057,7 @@ static int buffer_prepare(struct videobuf_queue *q,
buf->vb.field = field; buf->vb.field = field;
buf->fmt = fh->fmt; buf->fmt = fh->fmt;
buf->pt = &fh->pt_cap; buf->pt = &fh->pt_cap;
dev->video_q.curr = NULL;
err = videobuf_iolock(q,&buf->vb,&dev->ovbuf); err = videobuf_iolock(q,&buf->vb,&dev->ovbuf);
if (err) if (err)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment