Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 39ac5ba5 authored by Tushar Behera's avatar Tushar Behera Committed by Rafael J. Wysocki
Browse files

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: default avatarTushar Behera <tushar.behera@linaro.org>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 70f6c087
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -2558,6 +2558,13 @@ bytes respectively. Such letter suffixes can also be entirely omitted.

	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]
			See Documentation/blockdev/paride.txt.

+13 −0
Original line number Diff line number Diff line
@@ -705,6 +705,14 @@ static int pm_genpd_runtime_resume(struct device *dev)
	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.
 */
@@ -712,6 +720,11 @@ void pm_genpd_poweroff_unused(void)
{
	struct generic_pm_domain *genpd;

	if (pd_ignore_unused) {
		pr_warn("genpd: Not disabling unused power domains\n");
		return;
	}

	mutex_lock(&gpd_list_lock);

	list_for_each_entry(genpd, &gpd_list, gpd_list_node)