On Fri, Sep 13, 2024, Roy Luo wrote:
On Fri, Sep 6, 2024 at 5:58 PM Thinh Nguyen Thinh.Nguyen@synopsys.com wrote:
On Fri, Sep 06, 2024, Roy Luo wrote:
When dwc3_resume_common() returns an error, runtime pm is left in disabled state in dwc3_resume(). The next dwc3_suspend_common()
What issue did you see when dwc3_suspend_common is not skipped?
Apologies for the delayed response.
To answer your question, if dwc3_suspend_common() isn't skipped, it can lead to issues because dwc->dev is already in a suspended state. This could mean its parent devices (like the power domain or glue driver) are also suspended and may have released resources that dwc requires. Consequently, calling dwc3_suspend_common() in this situation could result in attempts to access unclocked or unpowered registers.
Can you include this info in the commit message?
And while at it, can you also update minor style change to remove the brackets for single line if statement to this:
ret = dwc3_resume_common(dwc, PMSG_RESUME); if (ret) pm_runtime_set_suspended(dev);
Thanks, Thinh