Message ID | 20110626130616.0d91dca7@pedra (mailing list archive) |
---|---|
State | RFC |
Headers | show |
Hi Mauro, On Sunday 26 June 2011 18:06:16 Mauro Carvalho Chehab wrote: > uvcvideo doesn't use vidioc_ioctl2. As the API is changing to use > a common version for all drivers, we need to expliticly fix this > driver. > > Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> > > diff --git a/drivers/media/video/uvc/uvc_driver.c > b/drivers/media/video/uvc/uvc_driver.c index b6eae48..749c722 100644 > --- a/drivers/media/video/uvc/uvc_driver.c > +++ b/drivers/media/video/uvc/uvc_driver.c > @@ -31,6 +31,7 @@ > #include <linux/videodev2.h> > #include <linux/vmalloc.h> > #include <linux/wait.h> > +#include <linux/version.h> > #include <asm/atomic.h> > #include <asm/unaligned.h> > > @@ -1857,7 +1858,7 @@ static int uvc_probe(struct usb_interface *intf, > sizeof(dev->mdev.serial)); > strcpy(dev->mdev.bus_info, udev->devpath); > dev->mdev.hw_revision = le16_to_cpu(udev->descriptor.bcdDevice); > - dev->mdev.driver_version = DRIVER_VERSION_NUMBER; > + dev->mdev.driver_version = LINUX_VERSION_CODE; If we report the kernel version number through the media controller API as well, this needs to be documented. In that case media_version should report the kernel version as well, and driver_version would become deprecated. > if (media_device_register(&dev->mdev) < 0) > goto error; > > diff --git a/drivers/media/video/uvc/uvc_v4l2.c > b/drivers/media/video/uvc/uvc_v4l2.c index 1fe2c8f..7f77528 100644 > --- a/drivers/media/video/uvc/uvc_v4l2.c > +++ b/drivers/media/video/uvc/uvc_v4l2.c > @@ -571,7 +571,7 @@ static long uvc_v4l2_do_ioctl(struct file *file, > unsigned int cmd, void *arg) strlcpy(cap->card, vdev->name, sizeof > cap->card); > usb_make_path(stream->dev->udev, > cap->bus_info, sizeof(cap->bus_info)); > - cap->version = DRIVER_VERSION_NUMBER; > + cap->version = LINUX_VERSION_CODE; > if (stream->type == V4L2_BUF_TYPE_VIDEO_CAPTURE) > cap->capabilities = V4L2_CAP_VIDEO_CAPTURE > > | V4L2_CAP_STREAMING; > > diff --git a/drivers/media/video/uvc/uvcvideo.h > b/drivers/media/video/uvc/uvcvideo.h index 20107fd..df32a43 100644 > --- a/drivers/media/video/uvc/uvcvideo.h > +++ b/drivers/media/video/uvc/uvcvideo.h > @@ -183,8 +183,7 @@ struct uvc_xu_control { > * Driver specific constants. > */ > > -#define DRIVER_VERSION_NUMBER KERNEL_VERSION(1, 1, 0) > -#define DRIVER_VERSION "v1.1.0" > +#define DRIVER_VERSION "1.1.1" Why do you remove the 'v' ? > /* Number of isochronous URBs. */ > #define UVC_URBS 5
diff --git a/drivers/media/video/uvc/uvc_driver.c b/drivers/media/video/uvc/uvc_driver.c index b6eae48..749c722 100644 --- a/drivers/media/video/uvc/uvc_driver.c +++ b/drivers/media/video/uvc/uvc_driver.c @@ -31,6 +31,7 @@ #include <linux/videodev2.h> #include <linux/vmalloc.h> #include <linux/wait.h> +#include <linux/version.h> #include <asm/atomic.h> #include <asm/unaligned.h> @@ -1857,7 +1858,7 @@ static int uvc_probe(struct usb_interface *intf, sizeof(dev->mdev.serial)); strcpy(dev->mdev.bus_info, udev->devpath); dev->mdev.hw_revision = le16_to_cpu(udev->descriptor.bcdDevice); - dev->mdev.driver_version = DRIVER_VERSION_NUMBER; + dev->mdev.driver_version = LINUX_VERSION_CODE; if (media_device_register(&dev->mdev) < 0) goto error; diff --git a/drivers/media/video/uvc/uvc_v4l2.c b/drivers/media/video/uvc/uvc_v4l2.c index 1fe2c8f..7f77528 100644 --- a/drivers/media/video/uvc/uvc_v4l2.c +++ b/drivers/media/video/uvc/uvc_v4l2.c @@ -571,7 +571,7 @@ static long uvc_v4l2_do_ioctl(struct file *file, unsigned int cmd, void *arg) strlcpy(cap->card, vdev->name, sizeof cap->card); usb_make_path(stream->dev->udev, cap->bus_info, sizeof(cap->bus_info)); - cap->version = DRIVER_VERSION_NUMBER; + cap->version = LINUX_VERSION_CODE; if (stream->type == V4L2_BUF_TYPE_VIDEO_CAPTURE) cap->capabilities = V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_STREAMING; diff --git a/drivers/media/video/uvc/uvcvideo.h b/drivers/media/video/uvc/uvcvideo.h index 20107fd..df32a43 100644 --- a/drivers/media/video/uvc/uvcvideo.h +++ b/drivers/media/video/uvc/uvcvideo.h @@ -183,8 +183,7 @@ struct uvc_xu_control { * Driver specific constants. */ -#define DRIVER_VERSION_NUMBER KERNEL_VERSION(1, 1, 0) -#define DRIVER_VERSION "v1.1.0" +#define DRIVER_VERSION "1.1.1" /* Number of isochronous URBs. */ #define UVC_URBS 5
uvcvideo doesn't use vidioc_ioctl2. As the API is changing to use a common version for all drivers, we need to expliticly fix this driver. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>