diff options
Diffstat (limited to 'drivers/media/pci/meye')
-rw-r--r-- | drivers/media/pci/meye/meye.c | 21 | ||||
-rw-r--r-- | drivers/media/pci/meye/meye.h | 2 |
2 files changed, 8 insertions, 15 deletions
diff --git a/drivers/media/pci/meye/meye.c b/drivers/media/pci/meye/meye.c index 9d9f90cb7740..ba887e8e1b17 100644 --- a/drivers/media/pci/meye/meye.c +++ b/drivers/media/pci/meye/meye.c | |||
@@ -1546,7 +1546,7 @@ static struct video_device meye_template = { | |||
1546 | .name = "meye", | 1546 | .name = "meye", |
1547 | .fops = &meye_fops, | 1547 | .fops = &meye_fops, |
1548 | .ioctl_ops = &meye_ioctl_ops, | 1548 | .ioctl_ops = &meye_ioctl_ops, |
1549 | .release = video_device_release, | 1549 | .release = video_device_release_empty, |
1550 | }; | 1550 | }; |
1551 | 1551 | ||
1552 | static const struct v4l2_ctrl_ops meye_ctrl_ops = { | 1552 | static const struct v4l2_ctrl_ops meye_ctrl_ops = { |
@@ -1623,7 +1623,7 @@ static int meye_probe(struct pci_dev *pcidev, const struct pci_device_id *ent) | |||
1623 | 1623 | ||
1624 | if (meye.mchip_dev != NULL) { | 1624 | if (meye.mchip_dev != NULL) { |
1625 | printk(KERN_ERR "meye: only one device allowed!\n"); | 1625 | printk(KERN_ERR "meye: only one device allowed!\n"); |
1626 | goto outnotdev; | 1626 | return ret; |
1627 | } | 1627 | } |
1628 | 1628 | ||
1629 | ret = v4l2_device_register(&pcidev->dev, v4l2_dev); | 1629 | ret = v4l2_device_register(&pcidev->dev, v4l2_dev); |
@@ -1633,11 +1633,6 @@ static int meye_probe(struct pci_dev *pcidev, const struct pci_device_id *ent) | |||
1633 | } | 1633 | } |
1634 | ret = -ENOMEM; | 1634 | ret = -ENOMEM; |
1635 | meye.mchip_dev = pcidev; | 1635 | meye.mchip_dev = pcidev; |
1636 | meye.vdev = video_device_alloc(); | ||
1637 | if (!meye.vdev) { | ||
1638 | v4l2_err(v4l2_dev, "video_device_alloc() failed!\n"); | ||
1639 | goto outnotdev; | ||
1640 | } | ||
1641 | 1636 | ||
1642 | meye.grab_temp = vmalloc(MCHIP_NB_PAGES_MJPEG * PAGE_SIZE); | 1637 | meye.grab_temp = vmalloc(MCHIP_NB_PAGES_MJPEG * PAGE_SIZE); |
1643 | if (!meye.grab_temp) { | 1638 | if (!meye.grab_temp) { |
@@ -1658,8 +1653,8 @@ static int meye_probe(struct pci_dev *pcidev, const struct pci_device_id *ent) | |||
1658 | goto outkfifoalloc2; | 1653 | goto outkfifoalloc2; |
1659 | } | 1654 | } |
1660 | 1655 | ||
1661 | memcpy(meye.vdev, &meye_template, sizeof(meye_template)); | 1656 | meye.vdev = meye_template; |
1662 | meye.vdev->v4l2_dev = &meye.v4l2_dev; | 1657 | meye.vdev.v4l2_dev = &meye.v4l2_dev; |
1663 | 1658 | ||
1664 | ret = -EIO; | 1659 | ret = -EIO; |
1665 | if ((ret = sony_pic_camera_command(SONY_PIC_COMMAND_SETCAMERA, 1))) { | 1660 | if ((ret = sony_pic_camera_command(SONY_PIC_COMMAND_SETCAMERA, 1))) { |
@@ -1743,9 +1738,9 @@ static int meye_probe(struct pci_dev *pcidev, const struct pci_device_id *ent) | |||
1743 | } | 1738 | } |
1744 | 1739 | ||
1745 | v4l2_ctrl_handler_setup(&meye.hdl); | 1740 | v4l2_ctrl_handler_setup(&meye.hdl); |
1746 | meye.vdev->ctrl_handler = &meye.hdl; | 1741 | meye.vdev.ctrl_handler = &meye.hdl; |
1747 | 1742 | ||
1748 | if (video_register_device(meye.vdev, VFL_TYPE_GRABBER, | 1743 | if (video_register_device(&meye.vdev, VFL_TYPE_GRABBER, |
1749 | video_nr) < 0) { | 1744 | video_nr) < 0) { |
1750 | v4l2_err(v4l2_dev, "video_register_device failed\n"); | 1745 | v4l2_err(v4l2_dev, "video_register_device failed\n"); |
1751 | goto outvideoreg; | 1746 | goto outvideoreg; |
@@ -1777,14 +1772,12 @@ outkfifoalloc2: | |||
1777 | outkfifoalloc1: | 1772 | outkfifoalloc1: |
1778 | vfree(meye.grab_temp); | 1773 | vfree(meye.grab_temp); |
1779 | outvmalloc: | 1774 | outvmalloc: |
1780 | video_device_release(meye.vdev); | ||
1781 | outnotdev: | ||
1782 | return ret; | 1775 | return ret; |
1783 | } | 1776 | } |
1784 | 1777 | ||
1785 | static void meye_remove(struct pci_dev *pcidev) | 1778 | static void meye_remove(struct pci_dev *pcidev) |
1786 | { | 1779 | { |
1787 | video_unregister_device(meye.vdev); | 1780 | video_unregister_device(&meye.vdev); |
1788 | 1781 | ||
1789 | mchip_hic_stop(); | 1782 | mchip_hic_stop(); |
1790 | 1783 | ||
diff --git a/drivers/media/pci/meye/meye.h b/drivers/media/pci/meye/meye.h index 6fed9274cfa5..751be5e533c7 100644 --- a/drivers/media/pci/meye/meye.h +++ b/drivers/media/pci/meye/meye.h | |||
@@ -311,7 +311,7 @@ struct meye { | |||
311 | struct kfifo doneq; /* queue for grabbed buffers */ | 311 | struct kfifo doneq; /* queue for grabbed buffers */ |
312 | spinlock_t doneq_lock; /* lock protecting the queue */ | 312 | spinlock_t doneq_lock; /* lock protecting the queue */ |
313 | wait_queue_head_t proc_list; /* wait queue */ | 313 | wait_queue_head_t proc_list; /* wait queue */ |
314 | struct video_device *vdev; /* video device parameters */ | 314 | struct video_device vdev; /* video device parameters */ |
315 | u16 brightness; | 315 | u16 brightness; |
316 | u16 hue; | 316 | u16 hue; |
317 | u16 contrast; | 317 | u16 contrast; |