Re: [PATCH 5.9] usb: dwc3: gadget: Enable suspend events

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

 



On Mon, May 24, 2021 at 09:47:32PM -0700, Jack Pham wrote:
> commit d1d90dd27254c44d087ad3f8b5b3e4fff0571f45 upstream.
> 
> commit 72704f876f50 ("dwc3: gadget: Implement the suspend entry event
> handler") introduced (nearly 5 years ago!) an interrupt handler for
> U3/L1-L2 suspend events.  The problem is that these events aren't
> currently enabled in the DEVTEN register so the handler is never
> even invoked.  Fix this simply by enabling the corresponding bit
> in dwc3_gadget_enable_irq() using the same revision check as found
> in the handler.
> 
> Fixes: 72704f876f50 ("dwc3: gadget: Implement the suspend entry event handler")
> Acked-by: Felipe Balbi <balbi@xxxxxxxxxx>
> Signed-off-by: Jack Pham <jackp@xxxxxxxxxxxxxx>
> Cc: stable <stable@xxxxxxxxxxxxxxx>
> Link: https://lore.kernel.org/r/20210428090111.3370-1-jackp@xxxxxxxxxxxxxx
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> ---
>  drivers/usb/dwc3/gadget.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
> index e822ba03d3cc..0fb4b29a2962 100644
> --- a/drivers/usb/dwc3/gadget.c
> +++ b/drivers/usb/dwc3/gadget.c
> @@ -2112,6 +2112,10 @@ static void dwc3_gadget_enable_irq(struct dwc3 *dwc)
>  	if (DWC3_VER_IS_PRIOR(DWC3, 250A))
>  		reg |= DWC3_DEVTEN_ULSTCNGEN;
>  
> +	/* On 2.30a and above this bit enables U3/L2-L1 Suspend Events */
> +	if (!DWC3_VER_IS_PRIOR(DWC3, 230A))
> +		reg |= DWC3_DEVTEN_EOPFEN;
> +
>  	dwc3_writel(dwc->regs, DWC3_DEVTEN, reg);
>  }
>  
> -- 
> 2.24.0
> 

5.9 is long end-of-life, please see the "Releases" page on kernel.org,
or just the front page itself, for the active kernels that we are
currently supporting.

thanks,

greg k-h



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux