lkml.org 
[lkml]   [2016]   [Aug]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2] usb: core: Add runtime resume checking in choose_wakeup()
On Thu, Aug 11, 2016 at 11:11:08AM +0800, Baolin Wang wrote:
> On 10 August 2016 at 22:31, Alan Stern <stern@rowland.harvard.edu> wrote:
> > On Wed, 10 Aug 2016, Baolin Wang wrote:
> >
> >> Considering strict power management for mobile device, we should also power
> >> off the usb controller if there are no slaves attached even though it is usb
> >> host function, but it will meet usb device resume failure in below situation.
> >>
> >> Suppose that no slave attached ----> usb interface runtime suspend ---->
> >> usb device runtime suspend -----> xhci suspend -----> power off usb controller.
> >> After that if the system wants to enter suspend state, then it also will issue
> >> usb_dev_suspend(), then the pm_runtime_resume() issued in choose_wakeup()
> >> function will return '-ESHUTDOWN' due to xhci has been suspend and hardware is
> >> not accessible.
> >
> > No, this is wrong. The pm_runtime_resume in choose_wakeup() should
> > cause the xHCI controller to resume also.
>
> But now it won't, it just resume usb device not xHCI controller. I
> suppose mainline kernel does not sopport this now.
>

Why? It works ok at my environment. The controller is the ancestor of
the USB device, if the USB device would like to be woken up, the
controller will be woken up first.

--

Best Regards,
Peter Chen

\
 
 \ /
  Last update: 2016-08-11 10:01    [W:0.038 / U:0.752 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site