Re: [PATCH v2] USB: announce bcdDevice as well as idVendor, idProduct.

From: Alan Stern
Date: Sat Mar 24 2018 - 12:06:26 EST


On Fri, 23 Mar 2018, Benson Leung wrote:

> Print bcdDevice which is used by vendors to identify different versions
> of the same product (or different versions of firmware).
>
> Adding this to the logs will be useful for support purposes.
>
> Match the %2x.%02x formatting that's used by lsusb -v for this same value.
>
> Signed-off-by: Benson Leung <bleung@xxxxxxxxxxxx>
> --
> v2: Format for decimal output.
> ---
> drivers/usb/core/hub.c | 19 ++++++++++++-------
> 1 file changed, 12 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
> index aaeef03c0d83..624cde7ffcea 100644
> --- a/drivers/usb/core/hub.c
> +++ b/drivers/usb/core/hub.c
> @@ -2192,14 +2192,19 @@ static void show_string(struct usb_device *udev, char *id, char *string)
>
> static void announce_device(struct usb_device *udev)
> {
> - dev_info(&udev->dev, "New USB device found, idVendor=%04x, idProduct=%04x\n",
> - le16_to_cpu(udev->descriptor.idVendor),
> - le16_to_cpu(udev->descriptor.idProduct));
> + u16 bcdDevice;
> +
> + bcdDevice = le16_to_cpu(udev->descriptor.bcdDevice);
> + dev_info(&udev->dev,
> + "New USB device found, idVendor=%04x, idProduct=%04x, bcdDevice=%2x.%02x\n",
> + le16_to_cpu(udev->descriptor.idVendor),

Unnecessary and incorrect whitespace changes.

> + le16_to_cpu(udev->descriptor.idProduct),
> + bcdDevice >> 8, bcdDevice & 0xff);
> dev_info(&udev->dev,
> - "New USB device strings: Mfr=%d, Product=%d, SerialNumber=%d\n",
> - udev->descriptor.iManufacturer,
> - udev->descriptor.iProduct,
> - udev->descriptor.iSerialNumber);
> + "New USB device strings: Mfr=%d, Product=%d, SerialNumber=%d\n",
> + udev->descriptor.iManufacturer,
> + udev->descriptor.iProduct,
> + udev->descriptor.iSerialNumber);

Same here.

Alan Stern