[media] omap24xxcam: add v4l2_device and replace parent with v4l2_dev
authorHans Verkuil <hans.verkuil@cisco.com>
Wed, 12 Jun 2013 09:03:27 +0000 (06:03 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 21 Jun 2013 14:05:16 +0000 (11:05 -0300)
This driver did not yet support struct v4l2_device, so add it. This
make it possible to replace the deprecated parent field with the
v4l2_dev field, allowing the eventual removal of the parent field.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sakari Ailus <sakari.ailus@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/platform/omap24xxcam.c
drivers/media/platform/omap24xxcam.h

index debb44ceb1856888420226a9f6d4580c1143ab53..d2b440c842b3f0867fbeea30dc12efb9761ac370 100644 (file)
@@ -1656,7 +1656,7 @@ static int omap24xxcam_device_register(struct v4l2_int_device *s)
        }
        vfd->release = video_device_release;
 
-       vfd->parent = cam->dev;
+       vfd->v4l2_dev = &cam->v4l2_dev;
 
        strlcpy(vfd->name, CAM_NAME, sizeof(vfd->name));
        vfd->fops                = &omap24xxcam_fops;
@@ -1752,6 +1752,11 @@ static int omap24xxcam_probe(struct platform_device *pdev)
 
        cam->dev = &pdev->dev;
 
+       if (v4l2_device_register(&pdev->dev, &cam->v4l2_dev)) {
+               dev_err(&pdev->dev, "v4l2_device_register failed\n");
+               goto err;
+       }
+
        /*
         * Impose a lower limit on the amount of memory allocated for
         * capture. We require at least enough memory to double-buffer
@@ -1849,6 +1854,8 @@ static int omap24xxcam_remove(struct platform_device *pdev)
                cam->mmio_base_phys = 0;
        }
 
+       v4l2_device_unregister(&cam->v4l2_dev);
+
        kfree(cam);
 
        return 0;
index c4395956a493a3a60ee2961407670573f1f9ef39..7f6f79155537a9fbdb921d516acdac9ca073d59c 100644 (file)
@@ -29,6 +29,7 @@
 
 #include <media/videobuf-dma-sg.h>
 #include <media/v4l2-int-device.h>
+#include <media/v4l2-device.h>
 
 /*
  *
@@ -462,6 +463,8 @@ struct omap24xxcam_device {
         */
        struct mutex mutex;
 
+       struct v4l2_device v4l2_dev;
+
        /*** general driver state information ***/
        atomic_t users;
        /*