From: Mathias Nyman
> Sent: 05 October 2017 09:22
> Shows the port speed protocol speed ID (PSID) in use.
> speed ID may map to custom speeds, but in most cases it uses default
> 
> 1 = Full-Speed        12 MB/s
> 2 = Low-Speed         1.5 Mb/s
> 3 = High-speed        480 Mb/s
> 4 = SuperSpeed        5 Gb/s
> 5 = SuperSpeedPlus    10 Gb/s
> 
> Signed-off-by: Mathias Nyman <mathias.ny...@linux.intel.com>
> ---
>  drivers/usb/host/xhci.h | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
> index dc22392..ea176da 100644
> --- a/drivers/usb/host/xhci.h
> +++ b/drivers/usb/host/xhci.h
> @@ -2441,11 +2441,12 @@ static inline const char *xhci_decode_portsc(u32 
> portsc)
>       static char str[256];
>       int ret;
> 
> -     ret = sprintf(str, "%s %s %s Link:%s ",
> +     ret = sprintf(str, "%s %s %s Link:%s PortSpeed:%d ",

Shouldn't that be an snprintf() ?

I'm not sure adding "1" to "5" here is entirely useful.
It would be better is a string could be returned containing the actual speed
ie "480Mb/s" etc.

>                     portsc & PORT_POWER       ? "Powered" : "Powered-off",
>                     portsc & PORT_CONNECT     ? "Connected" : "Not-connected",
>                     portsc & PORT_PE          ? "Enabled" : "Disabled",
> -                   xhci_portsc_link_state_string(portsc));
> +                   xhci_portsc_link_state_string(portsc),
> +                   DEV_PORT_SPEED(portsc));
> 
>       if (portsc & PORT_OC)
>               ret += sprintf(str + ret, "OverCurrent ");

The s(n)printf() above better not have overflowed the buffer...

        David

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to