V4L/DVB (8783): v4l: add all missing video_device release callbacks
authorHans Verkuil <hverkuil@xs4all.nl>
Sat, 23 Aug 2008 09:23:55 +0000 (06:23 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 12 Oct 2008 11:36:54 +0000 (09:36 -0200)
All drivers that call video_device_register where checked to see if they
set the release callback of struct video_device. Where that callback was
missing it was added.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
24 files changed:
drivers/media/radio/radio-aimslab.c
drivers/media/radio/radio-aztech.c
drivers/media/radio/radio-cadet.c
drivers/media/radio/radio-gemtek-pci.c
drivers/media/radio/radio-gemtek.c
drivers/media/radio/radio-maestro.c
drivers/media/radio/radio-maxiradio.c
drivers/media/radio/radio-rtrack2.c
drivers/media/radio/radio-sf16fmi.c
drivers/media/radio/radio-sf16fmr2.c
drivers/media/radio/radio-terratec.c
drivers/media/radio/radio-trust.c
drivers/media/radio/radio-typhoon.c
drivers/media/radio/radio-zoltrix.c
drivers/media/video/bw-qcam.c
drivers/media/video/c-qcam.c
drivers/media/video/cpia.c
drivers/media/video/pms.c
drivers/media/video/saa5249.c
drivers/media/video/se401.c
drivers/media/video/stradis.c
drivers/media/video/usbvideo/usbvideo.c
drivers/media/video/usbvideo/vicam.c
drivers/media/video/w9966.c

index b657c7bb47cc885c18359995ccd2b4b3f8d80a44..59fdaf85e41b6a87e0ba4d0a982b79cfff990de7 100644 (file)
@@ -420,6 +420,7 @@ static struct video_device rtrack_radio = {
        .name           = "RadioTrack radio",
        .fops           = &rtrack_fops,
        .ioctl_ops      = &rtrack_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 static int __init rtrack_init(void)
index ae18a7cf0d59370fb8d1e423fb36559ee89de0f7..ddd96295a9fe11695295d3c7fee27dd3aa80c7e6 100644 (file)
@@ -381,9 +381,10 @@ static const struct v4l2_ioctl_ops aztech_ioctl_ops = {
 };
 
 static struct video_device aztech_radio = {
-       .name               = "Aztech radio",
-       .fops               = &aztech_fops,
-       .ioctl_ops          = &aztech_ioctl_ops,
+       .name           = "Aztech radio",
+       .fops           = &aztech_fops,
+       .ioctl_ops      = &aztech_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 module_param_named(debug,aztech_radio.debug, int, 0644);
index 04c3698d32e4b77e3b28f81d104b0dcbe23dfe59..0490a1fa999db04d63a21def52448396b00dfa55 100644 (file)
@@ -589,6 +589,7 @@ static struct video_device cadet_radio = {
        .name           = "Cadet radio",
        .fops           = &cadet_fops,
        .ioctl_ops      = &cadet_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 #ifdef CONFIG_PNP
index a7b9a5df4ca7579c29c9fe6f2e967646a239bb68..d65fd287bde14f81c0ed8b5b666896c66ac86ad1 100644 (file)
@@ -401,9 +401,10 @@ static const struct v4l2_ioctl_ops gemtek_pci_ioctl_ops = {
 };
 
 static struct video_device vdev_template = {
-       .name          = "Gemtek PCI Radio",
-       .fops          = &gemtek_pci_fops,
-       .ioctl_ops     = &gemtek_pci_ioctl_ops,
+       .name           = "Gemtek PCI Radio",
+       .fops           = &gemtek_pci_fops,
+       .ioctl_ops      = &gemtek_pci_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 static int __devinit gemtek_pci_probe( struct pci_dev *pci_dev, const struct pci_device_id *pci_id )
index cc90329026f2dcf00fcb9a0a431c26c14c0e0e19..2d991ae2f205127a454ac282aa67dffcb60d4b29 100644 (file)
@@ -581,9 +581,10 @@ static const struct v4l2_ioctl_ops gemtek_ioctl_ops = {
 };
 
 static struct video_device gemtek_radio = {
-       .name                   = "GemTek Radio card",
-       .fops                   = &gemtek_fops,
-       .ioctl_ops              = &gemtek_ioctl_ops,
+       .name           = "GemTek Radio card",
+       .fops           = &gemtek_fops,
+       .ioctl_ops      = &gemtek_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 /*
index 03c20948eef28698efcf9fd5b27e89d5abb09a9a..182b433981ca69d97e65533279181785a01b38a7 100644 (file)
@@ -388,6 +388,7 @@ static struct video_device maestro_radio = {
        .name           = "Maestro radio",
        .fops           = &maestro_fops,
        .ioctl_ops      = &maestro_ioctl_ops,
+       .release        = video_device_release,
 };
 
 static int __devinit maestro_probe(struct pci_dev *pdev,
index 263ef8b02fd8317c2edc2f37e37d09582620493b..4e2e8a3d9b5f6b870b908930f2ead776f4991ccc 100644 (file)
@@ -402,9 +402,10 @@ static const struct v4l2_ioctl_ops maxiradio_ioctl_ops = {
 };
 
 static struct video_device maxiradio_radio = {
-       .name               = "Maxi Radio FM2000 radio",
-       .fops               = &maxiradio_fops,
-       .ioctl_ops          = &maxiradio_ioctl_ops,
+       .name           = "Maxi Radio FM2000 radio",
+       .fops           = &maxiradio_fops,
+       .ioctl_ops      = &maxiradio_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 static int __devinit maxiradio_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
index 5b93b47be71410a667dd1580a069224f27c7ff4b..8fe820da73e8f47069c5ed7bd0c4f1323fc844f7 100644 (file)
@@ -326,6 +326,7 @@ static struct video_device rtrack2_radio = {
        .name           = "RadioTrack II radio",
        .fops           = &rtrack2_fops,
        .ioctl_ops      = &rtrack2_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 static int __init rtrack2_init(void)
index 55f8334513f30b7e91eb36ef8a24ef965b6b9b72..6d865a7a91eccef6f44c4a140f3a397a311ca165 100644 (file)
@@ -326,6 +326,7 @@ static struct video_device fmi_radio = {
        .name           = "SF16FMx radio",
        .fops           = &fmi_fops,
        .ioctl_ops      = &fmi_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 /* ladis: this is my card. does any other types exist? */
index 14153ed939d01559c1e223d4cc6373b717e3a997..9625d1f0194eaceb495cca7b51e253ee6edad829 100644 (file)
@@ -442,6 +442,7 @@ static struct video_device fmr2_radio = {
        .name           = "SF16FMR2 radio",
        .fops           = &fmr2_fops,
        .ioctl_ops      = &fmr2_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 static int __init fmr2_init(void)
index eed14972a9400fe4ef6c95553105b68578d68fed..de13ec81ce49c8c6981e8349cab1948d2818767b 100644 (file)
@@ -398,6 +398,7 @@ static struct video_device terratec_radio = {
        .name           = "TerraTec ActiveRadio",
        .fops           = &terratec_fops,
        .ioctl_ops      = &terratec_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 static int __init terratec_init(void)
index dd0c425ef3b812558bf86dc36dbac244229cda56..e7b111fcd105b6fc79a3a11c922d6edf2a0542e1 100644 (file)
@@ -378,6 +378,7 @@ static struct video_device trust_radio = {
        .name           = "Trust FM Radio",
        .fops           = &trust_fops,
        .ioctl_ops      = &trust_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 static int __init trust_init(void)
index 8784685072378f8a1f6459fc69912bf8e137ae04..c2eedb7a73a5e0be2151aacfbbacfd17c947d666 100644 (file)
@@ -375,6 +375,7 @@ static struct video_device typhoon_radio = {
        .name           = "Typhoon Radio",
        .fops           = &typhoon_fops,
        .ioctl_ops      = &typhoon_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 #ifdef CONFIG_RADIO_TYPHOON_PROC_FS
index 4d76e710194b47414d9a5d9d80e64809e9469504..0d43e8401eb5e4af2d19a04a00f23529c13eadfd 100644 (file)
@@ -439,6 +439,7 @@ static struct video_device zoltrix_radio = {
        .name           = "Zoltrix Radio Plus",
        .fops           = &zoltrix_fops,
        .ioctl_ops      = &zoltrix_ioctl_ops,
+       .release        = video_device_release_empty,
 };
 
 static int __init zoltrix_init(void)
index e8e1bb122b591ddf50cd37e8c312d1851d8f35a7..ace4ff9ea023b69732568db94093fbf3396682ae 100644 (file)
@@ -926,6 +926,7 @@ static struct video_device qcam_template=
 {
        .name           = "Connectix Quickcam",
        .fops           = &qcam_fops,
+       .release        = video_device_release_empty,
 };
 
 #define MAX_CAMS 4
index 2196c1dc5aeec053eeb22b05e7ce1fc38e4647f4..17aa0adb346703938b650c8c8164e3789eab5f88 100644 (file)
@@ -722,6 +722,7 @@ static struct video_device qcam_template=
 {
        .name           = "Colour QuickCam",
        .fops           = &qcam_fops,
+       .release        = video_device_release_empty,
 };
 
 /* Initialize the QuickCam driver control structure. */
index a661800b0e69fdefec154a23b69462fc448da2c1..c0600fdbfc6f14a241267f2d3c6e91e75486761f 100644 (file)
@@ -3801,6 +3801,7 @@ static const struct file_operations cpia_fops = {
 static struct video_device cpia_template = {
        .name           = "CPiA Camera",
        .fops           = &cpia_fops,
+       .release        = video_device_release_empty,
 };
 
 /* initialise cam_data structure  */
index b39794f0baf52385ab51b20e25c252428a3f85ee..994807818aa26eacd2ffc09920445d2cc69f58d9 100644 (file)
@@ -915,6 +915,7 @@ static struct video_device pms_template=
 {
        .name           = "Mediavision PMS",
        .fops           = &pms_fops,
+       .release        = video_device_release_empty,
 };
 
 static struct pms_device pms_device;
index dfd8a9338c55ae7c8f9f6e48651631cc7cfefa74..225117c789ca75c7cdf30f2edbb676eeab085c10 100644 (file)
@@ -708,6 +708,7 @@ static struct video_device saa_template =
 {
        .name           = IF_NAME,
        .fops           = &saa_fops,
+       .release        = video_device_release,
 };
 
 MODULE_LICENSE("GPL");
index d16bbf0d278379510527cbea80d02752958759ad..b01f25d72922177a9e934dcbcb50a766474aa7ac 100644 (file)
@@ -1236,6 +1236,7 @@ static const struct file_operations se401_fops = {
 static struct video_device se401_template = {
        .name =         "se401 USB camera",
        .fops =         &se401_fops,
+       .release = video_device_release_empty,
 };
 
 
index a3cbe9be3c15e363eab265575505846d78a0d0a2..bbad54f85c83c83a92d8d4d41cdedf70af3b1803 100644 (file)
@@ -1925,6 +1925,7 @@ static struct video_device saa_template = {
        .name = "SAA7146A",
        .fops = &saa_fops,
        .minor = -1,
+       .release = video_device_release_empty,
 };
 
 static int __devinit configure_saa7146(struct pci_dev *pdev, int num)
index 6b1b2003a65ccb604629256732e4fc24c01a7ace..9569e8ced4b4f0fe9a5b92404869c51cd1dab39b 100644 (file)
@@ -1006,10 +1006,6 @@ allocate_done:
 
 EXPORT_SYMBOL(usbvideo_AllocateDevice);
 
-static void usbvideo_dummy_release(struct video_device *vfd)
-{
-}
-
 int usbvideo_RegisterVideoDevice(struct uvd *uvd)
 {
        char tmp1[20], tmp2[20];        /* Buffers for printing */
@@ -1043,7 +1039,7 @@ int usbvideo_RegisterVideoDevice(struct uvd *uvd)
                return -EINVAL;
        }
        uvd->vdev.parent = &uvd->dev->dev;
-       uvd->vdev.release = usbvideo_dummy_release;
+       uvd->vdev.release = video_device_release_empty;
        if (video_register_device(&uvd->vdev, VFL_TYPE_GRABBER, video_nr) < 0) {
                err("%s: video_register_device failed", __func__);
                return -EPIPE;
index efb878a7402e1f90cd2e7b8dcd5b247569cd5b16..d7728256f295426d50e40413682808f204703178 100644 (file)
@@ -801,6 +801,7 @@ static struct video_device vicam_template = {
        .name           = "ViCam-based USB Camera",
        .fops           = &vicam_fops,
        .minor          = -1,
+       .release        = video_device_release_empty,
 };
 
 /* table of devices that work with this driver */
index c635cffb1fb810088d0c093b72e8a926cd0432e9..e3580119640f4ed9a2849248ce1e8a439e4dd0cd 100644 (file)
@@ -216,6 +216,7 @@ static const struct file_operations w9966_fops = {
 static struct video_device w9966_template = {
        .name           = W9966_DRIVERNAME,
        .fops           = &w9966_fops,
+       .release        = video_device_release_empty,
 };
 
 /*