Re: [PATCH v1] usb: core: hub: improve port over-current alert msg

From: Greg Kroah-Hartman
Date: Tue Oct 05 2021 - 11:38:58 EST


On Tue, Oct 05, 2021 at 05:16:44PM +0200, Flavio Suligoi wrote:
> At the moment the port over-current message is
> displayed only if the over-current condition is permanent.
>
> But in case of permanent short-circuit or
> over-current, some USB power-distribution switches
> (such as the TPS20xx, etc.), after the over-current
> detection and the consequent shutdown, return
> in the normal state.

Please use the full 72 columns of the changelog text.


>
> So, in these cases, the over-current error message
> never appears.
>
> To overcome this problem, the "over-current condition"
> message is displayed even after some over-current events.
>
> Signed-off-by: Flavio Suligoi <f.suligoi@xxxxxxx>
> ---
> arch/arm64/boot/dts/Makefile | 1 +
> drivers/usb/core/hub.c | 5 +++--
> 2 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/Makefile b/arch/arm64/boot/dts/Makefile
> index 639e01a4d855..bf26ce60d78a 100644
> --- a/arch/arm64/boot/dts/Makefile
> +++ b/arch/arm64/boot/dts/Makefile
> @@ -8,6 +8,7 @@ subdir-y += amlogic
> subdir-y += apm
> subdir-y += apple
> subdir-y += arm
> +subdir-y += asem
> subdir-y += bitmain
> subdir-y += broadcom
> subdir-y += cavium

I do not think this change is part of this :(

> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
> index 86658a81d284..ff6c8e0e2673 100644
> --- a/drivers/usb/core/hub.c
> +++ b/drivers/usb/core/hub.c
> @@ -5577,7 +5577,8 @@ static void port_event(struct usb_hub *hub, int port1)
> msleep(100); /* Cool down */
> hub_power_on(hub, true);
> hub_port_status(hub, port1, &status, &unused);
> - if (status & USB_PORT_STAT_OVERCURRENT)
> + if ((status & USB_PORT_STAT_OVERCURRENT) ||
> + !(port_dev->over_current_count % 15))

What is 15?

> dev_err(&port_dev->dev, "over-current condition\n");
> }
>
> @@ -5738,7 +5739,7 @@ static void hub_event(struct work_struct *work)
> u16 status = 0;
> u16 unused;
>
> - dev_dbg(hub_dev, "over-current change\n");
> + dev_info(hub_dev, "over-current change\n");

This is just going to be noisy, what can a user do with this?

thanks,

greg k-h