Messages in this thread | | | From | Baolin Wang <> | Date | Mon, 24 Jul 2017 17:15:18 +0800 | Subject | Re: [PATCH] usb: dwc3: Support the dwc3 host suspend/resume |
| |
Hi Manu,
On 24 July 2017 at 16:42, Manu Gautam <mgautam@codeaurora.org> wrote: > Hi Baolin, > > > On 7/24/2017 11:26 AM, Baolin Wang wrote: > >>>>> Other than what I pushed in my patch - >>>>> ("usb: dwc3: Don't reinitialize core during host bus-suspend/resume") >>>>> Just performing pm_request_resume or handling same in dwc3 glue >>>>> driver should be sufficient. >>>> Yes. >>>> >>>>> Also, what is trigger for runtime_resume for your platform? >>>> In our platform glue layer, we have extcon events to notify there are >>>> devices connected, then gule layer will resume dwc3 device. >>>> >>> IMO you can just perform resume of &dwc->xhci->dev instead of resuming dwc3. >>> Since, dwc3 is parent of xhci that will trigger resume of dwc3 as well. >> I am not sure this is good enough but it seems can solve some >> problems, then we do not need resume/suspend host in dwc3 core. > > In that case can we proceed with this patch: > [1] https://www.spinics.net/lists/linux-usb/msg158682.html > > For your platform you can pick this patch and resume dwc->xhci->dev resume > from your glue driver. > Do you have any other concerns?
The same concern I explained in your patch. If we power off the controller when suspend, how can controller work well as host if we do not issue dwc3_core_init()? Suppose below cases: device attached: resume glue layer (power on dwc3 controller) ---> resume dwc3 device ---> resume xHCI device no device attached: suspend xHCI device ---> suspend dwc3 device ---> suspend glue layer (we can power off the dwc3 controller now)
Though now there are no upstreamed glue drivers will power off dwc3 controller, should we consider this situation?
-- Baolin.wang Best Regards
| |