PM / domains: Add pd_ignore_unused to keep power domains enabled

Keep all power-domains already enabled by bootloader on, even if no
driver has claimed them. This is useful for debug and development, but
should not be needed on a platform with proper driver support.

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Tushar Behera 2014-03-28 10:50:21 +05:30 committed by Rafael J. Wysocki
parent 70f6c08757
commit 39ac5ba51b
2 changed files with 20 additions and 0 deletions

View File

@ -2558,6 +2558,13 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
pcmv= [HW,PCMCIA] BadgePAD 4 pcmv= [HW,PCMCIA] BadgePAD 4
pd_ignore_unused
[PM]
Keep all power-domains already enabled by bootloader on,
even if no driver has claimed them. This is useful
for debug and development, but should not be
needed on a platform with proper driver support.
pd. [PARIDE] pd. [PARIDE]
See Documentation/blockdev/paride.txt. See Documentation/blockdev/paride.txt.

View File

@ -705,6 +705,14 @@ static int pm_genpd_runtime_resume(struct device *dev)
return 0; return 0;
} }
static bool pd_ignore_unused;
static int __init pd_ignore_unused_setup(char *__unused)
{
pd_ignore_unused = true;
return 1;
}
__setup("pd_ignore_unused", pd_ignore_unused_setup);
/** /**
* pm_genpd_poweroff_unused - Power off all PM domains with no devices in use. * pm_genpd_poweroff_unused - Power off all PM domains with no devices in use.
*/ */
@ -712,6 +720,11 @@ void pm_genpd_poweroff_unused(void)
{ {
struct generic_pm_domain *genpd; struct generic_pm_domain *genpd;
if (pd_ignore_unused) {
pr_warn("genpd: Not disabling unused power domains\n");
return;
}
mutex_lock(&gpd_list_lock); mutex_lock(&gpd_list_lock);
list_for_each_entry(genpd, &gpd_list, gpd_list_node) list_for_each_entry(genpd, &gpd_list, gpd_list_node)