aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorTrent Piepho <xyzzy@speakeasy.org>2009-03-28 21:25:35 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-03-30 11:43:44 -0400
commit5a27578667b3bd00cab909296824498bdbd732d5 (patch)
tree684da677b29e234bcd3a3a020bb6428fdd13ba46 /drivers
parent601bc2984508e8b70a604167229f4f687eae63bb (diff)
V4L/DVB (11263): gspca: Stop setting buffer type, and avoid memset in querycap
The v4l2-ioctl core checks the buffer type now by only allowing buffer types for which the corresponding ->vidioc_try_fmt_xxx() methods are defined. This driver only defines ->vidioc_try_fmt_vid_cap() so only VIDEO_CAPTURE buffers are allowed to be used with vidioc_g_parm. Also, ->vidioc_enum_fmt_vid_cap() is only called for VIDEO_CAPTURE buffers. There is no need to set the buffer type since it must already be the correct value. The struct which ->vidioc_querycap() is supposed to fill in is already zeroed so it's not necessary to call memset on it. Cc: Jean-Francois Moine <moinejf@free.fr> Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/video/gspca/gspca.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/media/video/gspca/gspca.c b/drivers/media/video/gspca/gspca.c
index 66e91d896eda..a75c1ca2db41 100644
--- a/drivers/media/video/gspca/gspca.c
+++ b/drivers/media/video/gspca/gspca.c
@@ -765,7 +765,6 @@ static int vidioc_enum_fmt_vid_cap(struct file *file, void *priv,
765 fmtdesc->pixelformat = fmt_tb[index]; 765 fmtdesc->pixelformat = fmt_tb[index];
766 if (gspca_is_compressed(fmt_tb[index])) 766 if (gspca_is_compressed(fmt_tb[index]))
767 fmtdesc->flags = V4L2_FMT_FLAG_COMPRESSED; 767 fmtdesc->flags = V4L2_FMT_FLAG_COMPRESSED;
768 fmtdesc->type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
769 fmtdesc->description[0] = fmtdesc->pixelformat & 0xff; 768 fmtdesc->description[0] = fmtdesc->pixelformat & 0xff;
770 fmtdesc->description[1] = (fmtdesc->pixelformat >> 8) & 0xff; 769 fmtdesc->description[1] = (fmtdesc->pixelformat >> 8) & 0xff;
771 fmtdesc->description[2] = (fmtdesc->pixelformat >> 16) & 0xff; 770 fmtdesc->description[2] = (fmtdesc->pixelformat >> 16) & 0xff;
@@ -962,8 +961,6 @@ static int vidioc_querycap(struct file *file, void *priv,
962 struct gspca_dev *gspca_dev = priv; 961 struct gspca_dev *gspca_dev = priv;
963 int ret; 962 int ret;
964 963
965 memset(cap, 0, sizeof *cap);
966
967 /* protect the access to the usb device */ 964 /* protect the access to the usb device */
968 if (mutex_lock_interruptible(&gspca_dev->usb_lock)) 965 if (mutex_lock_interruptible(&gspca_dev->usb_lock))
969 return -ERESTARTSYS; 966 return -ERESTARTSYS;
@@ -1341,7 +1338,6 @@ static int vidioc_g_parm(struct file *filp, void *priv,
1341{ 1338{
1342 struct gspca_dev *gspca_dev = priv; 1339 struct gspca_dev *gspca_dev = priv;
1343 1340
1344 parm->type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
1345 parm->parm.capture.readbuffers = gspca_dev->nbufread; 1341 parm->parm.capture.readbuffers = gspca_dev->nbufread;
1346 1342
1347 if (gspca_dev->sd_desc->get_streamparm) { 1343 if (gspca_dev->sd_desc->get_streamparm) {