LinuxTV Patchwork uvc: use usb_make_path to fill in usb_info

login
register
mail settings
Submitter Hans Verkuil
Date Feb. 1, 2019, 9:57 a.m.
Message ID <13e25527-e44b-2c6d-120c-b6d5d4f3432c@xs4all.nl>
Download mbox | patch
Permalink /patch/54239/
State New
Delegated to: Laurent Pinchart
Headers show

Comments

Hans Verkuil - Feb. 1, 2019, 9:57 a.m.
The uvc driver uses this function to fill in bus_info for VIDIOC_QUERYCAP,
so use the same function when filling in the bus_info for the media device.

The current implementation only fills in part of the info. E.g. if the full
bus_info is usb-0000:01:00.0-1.4.2, then the media bus_info only has 1.4.2.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
---
Laurent Pinchart - Feb. 14, 2019, 12:52 p.m.
Hi Hans,

Thank you for the patch.

On Fri, Feb 01, 2019 at 10:57:31AM +0100, Hans Verkuil wrote:
> The uvc driver uses this function to fill in bus_info for VIDIOC_QUERYCAP,
> so use the same function when filling in the bus_info for the media device.
> 
> The current implementation only fills in part of the info. E.g. if the full
> bus_info is usb-0000:01:00.0-1.4.2, then the media bus_info only has 1.4.2.
> 
> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>

This makes sense, even if in the long run we'll likely have to revisit
bus info.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

and applied to my tree.

> ---
> diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c
> index b62cbd800111..068cabf141c1 100644
> --- a/drivers/media/usb/uvc/uvc_driver.c
> +++ b/drivers/media/usb/uvc/uvc_driver.c
> @@ -2175,7 +2175,7 @@ static int uvc_probe(struct usb_interface *intf,
>  	if (udev->serial)
>  		strscpy(dev->mdev.serial, udev->serial,
>  			sizeof(dev->mdev.serial));
> -	strscpy(dev->mdev.bus_info, udev->devpath, sizeof(dev->mdev.bus_info));
> +	usb_make_path(udev, dev->mdev.bus_info, sizeof(dev->mdev.bus_info));
>  	dev->mdev.hw_revision = le16_to_cpu(udev->descriptor.bcdDevice);
>  	media_device_init(&dev->mdev);
>

Patch

diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c
index b62cbd800111..068cabf141c1 100644
--- a/drivers/media/usb/uvc/uvc_driver.c
+++ b/drivers/media/usb/uvc/uvc_driver.c
@@ -2175,7 +2175,7 @@  static int uvc_probe(struct usb_interface *intf,
 	if (udev->serial)
 		strscpy(dev->mdev.serial, udev->serial,
 			sizeof(dev->mdev.serial));
-	strscpy(dev->mdev.bus_info, udev->devpath, sizeof(dev->mdev.bus_info));
+	usb_make_path(udev, dev->mdev.bus_info, sizeof(dev->mdev.bus_info));
 	dev->mdev.hw_revision = le16_to_cpu(udev->descriptor.bcdDevice);
 	media_device_init(&dev->mdev);


Privacy Policy