diff options
author | Gerd Knorr <devnull@localhost> | 2004-03-05 15:39:48 +0000 |
---|---|---|
committer | Gerd Knorr <devnull@localhost> | 2004-03-05 15:39:48 +0000 |
commit | 82b2d6930fd7bb41b71617ca5eba804605af5513 (patch) | |
tree | e12631fc0fc6a4bdcb627871750b5da51c5837e2 /linux/drivers/media/video/cx88/cx88-video.c | |
parent | faee4a0ef457ebde343292fad383df29c77b562b (diff) | |
download | mediapointer-dvb-s2-82b2d6930fd7bb41b71617ca5eba804605af5513.tar.gz mediapointer-dvb-s2-82b2d6930fd7bb41b71617ca5eba804605af5513.tar.bz2 |
- more cards supported in ir-kbd-gpio.c
- add magics to video-buf structs.
- fix saa7134 oss driver spinlocks.
- misc minor stuff.
Diffstat (limited to 'linux/drivers/media/video/cx88/cx88-video.c')
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-video.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-video.c b/linux/drivers/media/video/cx88/cx88-video.c index e831b1c0d..56b72e44d 100644 --- a/linux/drivers/media/video/cx88/cx88-video.c +++ b/linux/drivers/media/video/cx88/cx88-video.c @@ -1757,6 +1757,30 @@ static int video_do_ioctl(struct inode *inode, struct file *file, } /* --- streaming capture ------------------------------------- */ + case VIDIOCGMBUF: + { + struct video_mbuf *mbuf = arg; + struct videobuf_queue *q; + struct v4l2_requestbuffers req; + unsigned int i; + + q = get_queue(fh); + memset(&req,0,sizeof(req)); + req.type = q->type; + req.count = 8; + req.memory = V4L2_MEMORY_MMAP; + err = videobuf_reqbufs(file,q,&req); + if (err < 0) + return err; + memset(mbuf,0,sizeof(*mbuf)); + mbuf->frames = req.count; + mbuf->size = 0; + for (i = 0; i < mbuf->frames; i++) { + mbuf->offsets[i] = q->bufs[i]->boff; + mbuf->size += q->bufs[i]->bsize; + } + return 0; + } case VIDIOC_REQBUFS: return videobuf_reqbufs(file, get_queue(fh), arg); |