[PATCH 1/2] usb: dwc3: gadget: Don't send unintended link state change

Mattijs Korpershoek mkorpershoek at kernel.org
Wed Jan 14 12:09:17 CET 2026


Hi Chris,

Thank you for the patch and sorry for the review delay. I was on
vacation and a bit swamped when coming back.

On Tue, Dec 23, 2025 at 17:13, Chris Morgan <macroalpha82 at gmail.com> wrote:

> From: Chris Morgan <macromorgan at hotmail.com>
>
> DCTL.ULSTCHNGREQ is a write-only field. When doing a read-modify-write
> to DCTL, the driver must make sure that there's no unintended link state
> change request from whatever is read from DCTL.ULSTCHNGREQ. Set link
> state change to no-action when the driver writes to DCTL.
>
> Note that this patch was submitted upstream in Linux in 2020 [1],
> and I've confirmed I need it in U-Boot to enable gadget mode.
>
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/drivers/usb/dwc3?id=5b738211fb59e114727381d07c647a77c0010996
>
> Signed-off-by: Thinh Nguyen <thinhn at synopsys.com>
> Signed-off-by: Chris Morgan <macromorgan at hotmail.com>
> ---
>  drivers/usb/dwc3/gadget.c | 20 +++++++++-----------
>  drivers/usb/dwc3/gadget.h | 14 ++++++++++++++
>  2 files changed, 23 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
> index 2b01113d54c..24ae0c232f6 100644
> --- a/drivers/usb/dwc3/gadget.c
> +++ b/drivers/usb/dwc3/gadget.c
> @@ -62,7 +62,7 @@ int dwc3_gadget_set_test_mode(struct dwc3 *dwc, int mode)
>  		return -EINVAL;
>  	}
>  
> -	dwc3_writel(dwc->regs, DWC3_DCTL, reg);
> +	dwc3_gadget_dctl_write_safe(dwc, reg);
>  
>  	return 0;
>  }
> @@ -1396,7 +1396,7 @@ static int dwc3_gadget_set_selfpowered(struct usb_gadget *g,
>  static int dwc3_gadget_run_stop(struct dwc3 *dwc, int is_on, int suspend)
>  {
>  	u32			reg;
> -	u32			timeout = 500;
> +	u32			timeout = 2000;

This change (timeout increase) is not part of patch you linked in [1]

Can you either drop this or move this to a separate patch, explaining
why it's needed?

>  


More information about the U-Boot mailing list