diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/media/video/gspca/gspca.c | 53 |
1 files changed, 1 insertions, 52 deletions
diff --git a/drivers/media/video/gspca/gspca.c b/drivers/media/video/gspca/gspca.c index 03a24510d66f..69b1058daeeb 100644 --- a/drivers/media/video/gspca/gspca.c +++ b/drivers/media/video/gspca/gspca.c | |||
@@ -1724,49 +1724,6 @@ static int vidioc_s_parm(struct file *filp, void *priv, | |||
1724 | return 0; | 1724 | return 0; |
1725 | } | 1725 | } |
1726 | 1726 | ||
1727 | #ifdef CONFIG_VIDEO_V4L1_COMPAT | ||
1728 | static int vidiocgmbuf(struct file *file, void *priv, | ||
1729 | struct video_mbuf *mbuf) | ||
1730 | { | ||
1731 | struct gspca_dev *gspca_dev = file->private_data; | ||
1732 | int i; | ||
1733 | |||
1734 | PDEBUG(D_STREAM, "cgmbuf"); | ||
1735 | if (gspca_dev->nframes == 0) { | ||
1736 | int ret; | ||
1737 | |||
1738 | { | ||
1739 | struct v4l2_format fmt; | ||
1740 | |||
1741 | fmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; | ||
1742 | i = gspca_dev->cam.nmodes - 1; /* highest mode */ | ||
1743 | fmt.fmt.pix.width = gspca_dev->cam.cam_mode[i].width; | ||
1744 | fmt.fmt.pix.height = gspca_dev->cam.cam_mode[i].height; | ||
1745 | fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_BGR24; | ||
1746 | ret = vidioc_s_fmt_vid_cap(file, priv, &fmt); | ||
1747 | if (ret != 0) | ||
1748 | return ret; | ||
1749 | } | ||
1750 | { | ||
1751 | struct v4l2_requestbuffers rb; | ||
1752 | |||
1753 | memset(&rb, 0, sizeof rb); | ||
1754 | rb.count = 4; | ||
1755 | rb.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; | ||
1756 | rb.memory = V4L2_MEMORY_MMAP; | ||
1757 | ret = vidioc_reqbufs(file, priv, &rb); | ||
1758 | if (ret != 0) | ||
1759 | return ret; | ||
1760 | } | ||
1761 | } | ||
1762 | mbuf->frames = gspca_dev->nframes; | ||
1763 | mbuf->size = gspca_dev->frsz * gspca_dev->nframes; | ||
1764 | for (i = 0; i < mbuf->frames; i++) | ||
1765 | mbuf->offsets[i] = gspca_dev->frame[i].v4l2_buf.m.offset; | ||
1766 | return 0; | ||
1767 | } | ||
1768 | #endif | ||
1769 | |||
1770 | static int dev_mmap(struct file *file, struct vm_area_struct *vma) | 1727 | static int dev_mmap(struct file *file, struct vm_area_struct *vma) |
1771 | { | 1728 | { |
1772 | struct gspca_dev *gspca_dev = file->private_data; | 1729 | struct gspca_dev *gspca_dev = file->private_data; |
@@ -1807,12 +1764,7 @@ static int dev_mmap(struct file *file, struct vm_area_struct *vma) | |||
1807 | ret = -EINVAL; | 1764 | ret = -EINVAL; |
1808 | goto out; | 1765 | goto out; |
1809 | } | 1766 | } |
1810 | #ifdef CONFIG_VIDEO_V4L1_COMPAT | 1767 | if (size != frame->v4l2_buf.length) { |
1811 | /* v4l1 maps all the buffers */ | ||
1812 | if (i != 0 | ||
1813 | || size != frame->v4l2_buf.length * gspca_dev->nframes) | ||
1814 | #endif | ||
1815 | if (size != frame->v4l2_buf.length) { | ||
1816 | PDEBUG(D_STREAM, "mmap bad size"); | 1768 | PDEBUG(D_STREAM, "mmap bad size"); |
1817 | ret = -EINVAL; | 1769 | ret = -EINVAL; |
1818 | goto out; | 1770 | goto out; |
@@ -2204,9 +2156,6 @@ static const struct v4l2_ioctl_ops dev_ioctl_ops = { | |||
2204 | .vidioc_s_register = vidioc_s_register, | 2156 | .vidioc_s_register = vidioc_s_register, |
2205 | #endif | 2157 | #endif |
2206 | .vidioc_g_chip_ident = vidioc_g_chip_ident, | 2158 | .vidioc_g_chip_ident = vidioc_g_chip_ident, |
2207 | #ifdef CONFIG_VIDEO_V4L1_COMPAT | ||
2208 | .vidiocgmbuf = vidiocgmbuf, | ||
2209 | #endif | ||
2210 | }; | 2159 | }; |
2211 | 2160 | ||
2212 | static struct video_device gspca_template = { | 2161 | static struct video_device gspca_template = { |