1. 22 Dec, 2009 1 commit
    • Rafael J. Wysocki's avatar
      PM / Runtime: Use device type and device class callbacks · a6ab7aa9
      Rafael J. Wysocki authored
      The power management of some devices is handled through device types
      and device classes rather than through bus types.  Since these
      devices may also benefit from using the run-time power management
      core, extend it so that the device type and device class run-time PM
      callbacks can be taken into consideration by it if the bus type
      callback is not defined.
      
      Update the run-time PM core documentation to reflect this change.
      Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
      a6ab7aa9
  2. 21 Dec, 2009 1 commit
    • Alan Stern's avatar
      PM: Use pm_runtime_put_sync in system resume · aa0baaef
      Alan Stern authored
      This patch (as1317) fixes a bug in the PM core.  When a device is
      resumed following a system sleep, the core decrements the device's
      runtime PM usage counter but doesn't issue an idle notification if the
      counter reaches 0.  This could prevent an otherwise unused device from
      being runtime-suspended again after the system sleep.
      
      The fix is to call pm_runtime_put_sync() instead of
      pm_runtime_put_noidle().
      Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
      aa0baaef
  3. 18 Dec, 2009 2 commits
    • Rafael J. Wysocki's avatar
      PM: Measure device suspend and resume times · ecf762b2
      Rafael J. Wysocki authored
      Measure and print the time of suspending and resuming all devices.
      Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
      ecf762b2
    • Rafael J. Wysocki's avatar
      PM: Make the initcall_debug style timing for suspend/resume complete · 875ab0b7
      Rafael J. Wysocki authored
      Commit f2511774
      (PM: Add initcall_debug style timing for suspend/resume) introduced
      basic timing instrumentation, needed for a scritps/bootgraph.pl
      equivalent or humans, but it missed the fact that bus types and
      device classes which haven't been switched to using struct dev_pm_ops
      objects yet need special handling.  As a result, the suspend/resume
      timing information is only available for devices whose bus types or
      device classes use struct dev_pm_ops objects, so the majority of
      devices is not covered.
      
      Fix this by adding basic suspend/resume timing instrumentation for
      devices whose bus types and device classes still don't use struct
      dev_pm_ops objects for power management.  To reduce code duplication
      move the timing code to helper functions.
      Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
      875ab0b7
  4. 17 Dec, 2009 36 commits