[lkml]   [2011]   [Apr]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [linux-pm] [RFC][PATCH 1/2] PM / Runtime: Support for generic I/O power domains
On Fri, Apr 29, 2011 at 8:54 AM, Rafael J. Wysocki <> wrote:
> From: Rafael J. Wysocki <>
> Introcude common headers, helper functions and callbacks allowing
> platforms to use simple generic power domains for runtime power
> management.
> Introduce struct generic_power_domain to be used for representing
> power domains that each contain a number of devices and may be
> master domains or subdomains with respect to other power domains.
> Among other things, this structure includes callbacks to be
> provided by platforms for performing specific tasks related to
> power management (i.e. ->stop_device() may disable a device's
> clocks, while ->start_device() may enable them, ->power_on() is
> supposed to remove power from the entire power domain
> and ->power_off() is supposed to restore it).
> Introduce functions that can be used as power domain runtime PM
> callbacks, pm_genpd_runtime_suspend() and pm_genpd_runtime_resume(),
> as well as helper functions for the initialization of a power
> domain represented by a struct generic_power_domain object,
> adding a device to or removing a device from it and adding or
> removing subdomains.
> Signed-off-by: Rafael J. Wysocki <>


The pm_domain is assuming that there is at most one powerdomain per
device, which is perfectly fine with my machines and the concept of
in-SoC powerdomains.

However, if so, wouldn't it be possible to simply set powerdomain by
setting a device's parent?
For example, for a device, struct device *dev, and a powerdomain,
struct device *pd, use
"dev.parent = pd;", and let runtime-pm handle including the
"dev_power_governor" in the pm_domain's pm related code.


- MyungJoo

MyungJoo Ham, Ph.D.
Mobile Software Platform Lab,
Digital Media and Communications (DMC) Business
Samsung Electronics
cell: 82-10-6714-2858

 \ /
  Last update: 2011-04-29 03:29    [W:0.200 / U:2.480 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site