[media] arv: use latest frameworks
authorHans Verkuil <hans.verkuil@cisco.com>
Tue, 8 May 2012 19:50:33 +0000 (16:50 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 20 May 2012 11:43:42 +0000 (08:43 -0300)
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/arv.c

index b6ed44aebe30bcf1c186bd877125bca353e6bb96..e346d32d08ce5cd5a95a3fef8e86385c6ae5ca91 100644 (file)
@@ -31,6 +31,7 @@
 #include <media/v4l2-common.h>
 #include <media/v4l2-device.h>
 #include <media/v4l2-ioctl.h>
+#include <media/v4l2-fh.h>
 #include <linux/mutex.h>
 
 #include <asm/uaccess.h>
@@ -403,7 +404,8 @@ static int ar_querycap(struct file *file, void  *priv,
        strlcpy(vcap->driver, ar->vdev.name, sizeof(vcap->driver));
        strlcpy(vcap->card, "Colour AR VGA", sizeof(vcap->card));
        strlcpy(vcap->bus_info, "Platform", sizeof(vcap->bus_info));
-       vcap->capabilities = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_READWRITE;
+       vcap->device_caps = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_READWRITE;
+       vcap->capabilities = vcap->device_caps | V4L2_CAP_DEVICE_CAPS;
        return 0;
 }
 
@@ -709,6 +711,8 @@ static int ar_initialize(struct ar *ar)
 
 static const struct v4l2_file_operations ar_fops = {
        .owner          = THIS_MODULE,
+       .open           = v4l2_fh_open,
+       .release        = v4l2_fh_release,
        .read           = ar_read,
        .unlocked_ioctl = video_ioctl2,
 };
@@ -769,6 +773,7 @@ static int __init ar_init(void)
        ar->vdev.fops = &ar_fops;
        ar->vdev.ioctl_ops = &ar_ioctl_ops;
        ar->vdev.release = video_device_release_empty;
+       set_bit(V4L2_FL_USE_FH_PRIO, &ar->vdev.flags);
        video_set_drvdata(&ar->vdev, ar);
 
        if (vga) {