]> Pileus Git - ~andy/linux/blobdiff - drivers/media/pci/saa7134/saa7134-core.c
Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
[~andy/linux] / drivers / media / pci / saa7134 / saa7134-core.c
index 27d7ee709c5895ddd29eb956992c6a9ebc97bff9..1362b4aab47327f95088476d0c45fc0ca48d611e 100644 (file)
@@ -751,6 +751,7 @@ static int saa7134_hwfini(struct saa7134_dev *dev)
        saa7134_input_fini(dev);
        saa7134_vbi_fini(dev);
        saa7134_tvaudio_fini(dev);
+       saa7134_video_fini(dev);
        return 0;
 }
 
@@ -802,7 +803,6 @@ static struct video_device *vdev_init(struct saa7134_dev *dev,
        *vfd = *template;
        vfd->v4l2_dev  = &dev->v4l2_dev;
        vfd->release = video_device_release;
-       vfd->debug   = video_debug;
        snprintf(vfd->name, sizeof(vfd->name), "%s %s (%s)",
                 dev->name, type, saa7134_boards[dev->board].name);
        set_bit(V4L2_FL_USE_FH_PRIO, &vfd->flags);
@@ -1008,13 +1008,13 @@ static int saa7134_initdev(struct pci_dev *pci_dev,
 
        /* load i2c helpers */
        if (card_is_empress(dev)) {
-               struct v4l2_subdev *sd =
+               dev->empress_sd =
                        v4l2_i2c_new_subdev(&dev->v4l2_dev, &dev->i2c_adap,
                                "saa6752hs",
                                saa7134_boards[dev->board].empress_addr, NULL);
 
-               if (sd)
-                       sd->grp_id = GRP_EMPRESS;
+               if (dev->empress_sd)
+                       dev->empress_sd->grp_id = GRP_EMPRESS;
        }
 
        if (saa7134_boards[dev->board].rds_addr) {
@@ -1046,6 +1046,7 @@ static int saa7134_initdev(struct pci_dev *pci_dev,
                printk(KERN_INFO "%s: Overlay support disabled.\n", dev->name);
 
        dev->video_dev = vdev_init(dev,&saa7134_video_template,"video");
+       dev->video_dev->ctrl_handler = &dev->ctrl_handler;
        err = video_register_device(dev->video_dev,VFL_TYPE_GRABBER,
                                    video_nr[dev->nr]);
        if (err < 0) {
@@ -1057,6 +1058,7 @@ static int saa7134_initdev(struct pci_dev *pci_dev,
               dev->name, video_device_node_name(dev->video_dev));
 
        dev->vbi_dev = vdev_init(dev, &saa7134_video_template, "vbi");
+       dev->vbi_dev->ctrl_handler = &dev->ctrl_handler;
 
        err = video_register_device(dev->vbi_dev,VFL_TYPE_VBI,
                                    vbi_nr[dev->nr]);
@@ -1067,6 +1069,7 @@ static int saa7134_initdev(struct pci_dev *pci_dev,
 
        if (card_has_radio(dev)) {
                dev->radio_dev = vdev_init(dev,&saa7134_radio_template,"radio");
+               dev->radio_dev->ctrl_handler = &dev->radio_ctrl_handler;
                err = video_register_device(dev->radio_dev,VFL_TYPE_RADIO,
                                            radio_nr[dev->nr]);
                if (err < 0)