[media] cx88: add priority support
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
c5a861449f
commit
88bb42fb5a
4 changed files with 12 additions and 0 deletions
|
@ -974,6 +974,7 @@ static int mpeg_open(struct file *file)
|
|||
mutex_unlock(&dev->core->lock);
|
||||
return -ENOMEM;
|
||||
}
|
||||
v4l2_fh_init(&fh->fh, vdev);
|
||||
file->private_data = fh;
|
||||
fh->dev = dev;
|
||||
|
||||
|
@ -990,6 +991,7 @@ static int mpeg_open(struct file *file)
|
|||
|
||||
dev->core->mpeg_users++;
|
||||
mutex_unlock(&dev->core->lock);
|
||||
v4l2_fh_add(&fh->fh);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -1010,6 +1012,8 @@ static int mpeg_release(struct file *file)
|
|||
|
||||
videobuf_mmap_free(&fh->mpegq);
|
||||
|
||||
v4l2_fh_del(&fh->fh);
|
||||
v4l2_fh_exit(&fh->fh);
|
||||
file->private_data = NULL;
|
||||
kfree(fh);
|
||||
|
||||
|
|
|
@ -1036,6 +1036,7 @@ struct video_device *cx88_vdev_init(struct cx88_core *core,
|
|||
vfd->release = video_device_release;
|
||||
snprintf(vfd->name, sizeof(vfd->name), "%s %s (%s)",
|
||||
core->name, type, core->board.name);
|
||||
set_bit(V4L2_FL_USE_FH_PRIO, &vfd->flags);
|
||||
return vfd;
|
||||
}
|
||||
|
||||
|
|
|
@ -744,6 +744,7 @@ static int video_open(struct file *file)
|
|||
if (unlikely(!fh))
|
||||
return -ENOMEM;
|
||||
|
||||
v4l2_fh_init(&fh->fh, vdev);
|
||||
file->private_data = fh;
|
||||
fh->dev = dev;
|
||||
|
||||
|
@ -788,6 +789,7 @@ static int video_open(struct file *file)
|
|||
|
||||
core->users++;
|
||||
mutex_unlock(&core->lock);
|
||||
v4l2_fh_add(&fh->fh);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -883,6 +885,8 @@ static int video_release(struct file *file)
|
|||
videobuf_mmap_free(&fh->vbiq);
|
||||
|
||||
mutex_lock(&dev->core->lock);
|
||||
v4l2_fh_del(&fh->fh);
|
||||
v4l2_fh_exit(&fh->fh);
|
||||
file->private_data = NULL;
|
||||
kfree(fh);
|
||||
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
#include <linux/kdev_t.h>
|
||||
|
||||
#include <media/v4l2-device.h>
|
||||
#include <media/v4l2-fh.h>
|
||||
#include <media/tuner.h>
|
||||
#include <media/tveeprom.h>
|
||||
#include <media/videobuf-dma-sg.h>
|
||||
|
@ -454,6 +455,7 @@ struct cx8802_dev;
|
|||
/* function 0: video stuff */
|
||||
|
||||
struct cx8800_fh {
|
||||
struct v4l2_fh fh;
|
||||
struct cx8800_dev *dev;
|
||||
unsigned int resources;
|
||||
|
||||
|
@ -504,6 +506,7 @@ struct cx8800_dev {
|
|||
/* function 2: mpeg stuff */
|
||||
|
||||
struct cx8802_fh {
|
||||
struct v4l2_fh fh;
|
||||
struct cx8802_dev *dev;
|
||||
struct videobuf_queue mpegq;
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue