Re: [PATCH] usb: dwc3: dwc3-am62: Re-initialize controller if lost power in PM suspend

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

 



Hi Roger,

On Wed, Nov 27, 2024, Roger Quadros wrote:
> Hi Thinh,
> 
> On 27/11/2024 00:15, Thinh Nguyen wrote:
> > On Mon, Nov 25, 2024, Roger Quadros wrote:
> >>
> >>
> >> On 25/11/2024 20:23, Thinh Nguyen wrote:
> >>> On Fri, Nov 22, 2024, Roger Quadros wrote:
> >>>> If controller looses power during PM suspend then re-initialize
> >>>> it. We use the DEBUG_CFG register to track if controller lost power
> >>>> or was reset in PM suspend.
> >>>>
> >>>> Move all initialization code into dwc3_ti_init() so it can be re-used.
> >>>>
> >>>> Signed-off-by: Roger Quadros <rogerq@xxxxxxxxxx>
> >>>> ---
> >>>>  drivers/usb/dwc3/dwc3-am62.c | 82 +++++++++++++++++++++++++++++---------------
> >>>>  1 file changed, 55 insertions(+), 27 deletions(-)
> >>>>
> >>>> diff --git a/drivers/usb/dwc3/dwc3-am62.c b/drivers/usb/dwc3/dwc3-am62.c
> >>>> index fad151e78fd6..2192222faf4f 100644
> >>>> --- a/drivers/usb/dwc3/dwc3-am62.c
> >>>> +++ b/drivers/usb/dwc3/dwc3-am62.c
> >>>> @@ -108,6 +108,9 @@
> >>>>  
> >>>>  #define DWC3_AM62_AUTOSUSPEND_DELAY	100
> >>>>  
> >>>> +#define USBSS_DEBUG_CFG_OFF		0x7
> >>>> +#define USBSS_DEBUG_CFG_DISABLED	0x7
> >>>
> >>> Do we need 2 different macros with the same value of the same register
> >>> for this?
> >>
> >> Oops. This is a mistake. The second one should be 0.
> >>
> > 
> > Ok. Please send a fix.
> 
> Yes I will send a v2.
> 
> I have a query regarding this. Even though we restore the USB wrapper context
> the XHCI driver still complains with below message.
> 
> [   68.235111] xhci-hcd xhci-hcd.0.auto: xHC error in resume, USBSTS 0x401, Reinit
> 
> Clearly the Save/restore failed and so SRE bit is set.
> Is this something to be concerned about or needs addressing?
> 
> the host controller functions fine as it is re-initialized by the
> XHCI driver.
> 

Any device/function that demands no interruption between suspend/resume,
then it may be an issue. For example, That means that you can't suspend
and properly resume in the middle of file transfer for MSC.

BR,
Thinh




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

  Powered by Linux