lkml.org 
[lkml]   [2015]   [Sep]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [RFC PATCH] PM / Runtime: runtime: Add sysfs option for forcing runtime suspend
    Date
    On Friday, September 25, 2015 11:52:23 PM Rafael J. Wysocki wrote:
    > On Friday, September 25, 2015 05:13:04 PM Alan Stern wrote:
    > > On Fri, 25 Sep 2015, Rafael J. Wysocki wrote:
    > >
    > > > On Friday, September 25, 2015 10:29:55 AM Alan Stern wrote:
    > > > > On Fri, 25 Sep 2015, Rafael J. Wysocki wrote:
    > > > >
    > > > > > We are missing the "no remote wakeup" bit now (well, there is a PM QoS flag,
    > > > > > but it isn't very useful, so I'd prefer to replace it with a "no remote wakeup"
    > > > > > bit in struct dev_pm_info or something similar).
    > > > > >
    > > > > > That is actually quite important, because (a) we can save energy but not
    > > > > > configuring the device to do remote wakeup in the first place and (b) that
    > > > > > may involve more than just the driver (for example, disabling PCI or ACPI
    > > > > > remote wakeup involves the bus type or similar).
    > > > > >
    > > > > > So it looks like we need to be able to distinguish between "runtime suspend
    > > > > > with remote wakeup" and "runtime suspend without remote wakeup".
    > > > > >
    > > > > > And if we do the latter, we may not even need the "inhibit" thing any more,
    > > > > > because suspended devices without that are not configured to do remote wakeup
    > > > > > cannot really signal anything in the majority of cases.
    > > > >
    > > > > That works only for drivers that use autosuspend to go to low power in
    > > > > between events. It doesn't work for drivers that remain at full power
    > > > > as long as the device file is open. That kind of driver does require
    > > > > an "inhibit" interface.
    > > >
    > > > Or an interface allowing user space to trigger pm_request_idle() for them.
    > > >
    > > > So user space would change the "no remote wakeup" setting and then do the
    > > > "try to suspend now" thing.
    > >
    > > So something like:
    > >
    > > echo on >/sys/.../power/control (in case the device was
    > > already in runtime suspend with wakeups enabled)
    > > echo off >/sys/.../power/wakeup
    > > echo auto >/sys/.../power/control
    >
    > That, or there may be an additional value, say "aggressive", to write to the
    > control file in which case it becomes just
    >
    > echo aggressive >/sys/.../power/control

    That said I suppose that the "off" value for the "wakeup" file might also be
    useful in some other cases, so it likely is a better approach.

    Thanks,
    Rafael



    \
     
     \ /
      Last update: 2015-09-26 01:01    [W:4.242 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site