V4L/DVB (6259): Fix vivi poll() method

Due to the replace of videobuf_read_one to videobuf_read_stream, poll()
method implementation is wrong. This fixes poll() implementation, making
read of /dev/video? to work again.

With this method, an USB driver can use video-buf, without needing to
request memory from the DMA-safe area.

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
Mauro Carvalho Chehab 2007-08-27 07:37:34 -03:00
parent ba366a23b6
commit 40558dafff
1 changed files with 2 additions and 3 deletions

View File

@ -1122,9 +1122,8 @@ vivi_poll(struct file *file, struct poll_table_struct *wait)
} else { } else {
dprintk(1,"poll: read() interface\n"); dprintk(1,"poll: read() interface\n");
/* read() capture */ /* read() capture */
buf = (struct vivi_buffer*)fh->vb_vidq.read_buf; return videobuf_poll_stream(file, &fh-> vb_vidq,
if (NULL == buf) wait);
return POLLERR;
} }
poll_wait(file, &buf->vb.done, wait); poll_wait(file, &buf->vb.done, wait);
if (buf->vb.state == STATE_DONE || if (buf->vb.state == STATE_DONE ||