RE: [PATCH 02/13] xhci: add port speed ID to portsc tracing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.nyman@xxxxxxxxxxxxxxx>
> ---
>  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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux