linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ulf Hansson <ulf.hansson@linaro.org>
To: Sudeep Holla <sudeep.holla@arm.com>,
	Lorenzo Pieralisi <Lorenzo.Pieralisi@arm.com>,
	Saravana Kannan <saravanak@google.com>,
	linux-pm@vger.kernel.org
Cc: "Rafael J . Wysocki" <rjw@rjwysocki.net>,
	Daniel Lezcano <daniel.lezcano@linaro.org>,
	Lina Iyer <ilina@codeaurora.org>,
	Vincent Guittot <vincent.guittot@linaro.org>,
	Stephen Boyd <sboyd@kernel.org>,
	Bjorn Andersson <bjorn.andersson@linaro.org>,
	Benjamin Gaignard <benjamin.gaignard@st.com>,
	Ulf Hansson <ulf.hansson@linaro.org>,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/5] cpuidle: psci: Fail cpuidle registration if set OSI mode failed
Date: Mon, 15 Jun 2020 17:20:50 +0200	[thread overview]
Message-ID: <20200615152054.6819-2-ulf.hansson@linaro.org> (raw)
In-Reply-To: <20200615152054.6819-1-ulf.hansson@linaro.org>

Currently we allow the cpuidle driver registration to succeed, even if we
failed to enable the OSI mode when the hierarchical DT layout is used. This
means running in a degraded mode, by using the available idle states per
CPU, while also preventing the domain idle states.

Moving forward, this behaviour looks quite questionable to maintain, as
complexity seems to grow around it, especially when trying to add support
for deferred probe, for example.

Therefore, let's make the cpuidle driver registration to fail in this
situation, thus relying on the default architectural cpuidle backend for
WFI to be used.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
---
 drivers/cpuidle/cpuidle-psci-domain.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/drivers/cpuidle/cpuidle-psci-domain.c b/drivers/cpuidle/cpuidle-psci-domain.c
index 423f03bbeb74..f07786aad673 100644
--- a/drivers/cpuidle/cpuidle-psci-domain.c
+++ b/drivers/cpuidle/cpuidle-psci-domain.c
@@ -26,7 +26,6 @@ struct psci_pd_provider {
 };
 
 static LIST_HEAD(psci_pd_providers);
-static bool osi_mode_enabled __initdata;
 
 static int psci_pd_power_off(struct generic_pm_domain *pd)
 {
@@ -272,7 +271,6 @@ static int __init psci_idle_init_domains(void)
 		goto remove_pd;
 	}
 
-	osi_mode_enabled = true;
 	of_node_put(np);
 	pr_info("Initialized CPU PM domain topology\n");
 	return pd_count;
@@ -293,9 +291,6 @@ struct device __init *psci_dt_attach_cpu(int cpu)
 {
 	struct device *dev;
 
-	if (!osi_mode_enabled)
-		return NULL;
-
 	dev = dev_pm_domain_attach_by_name(get_cpu_device(cpu), "psci");
 	if (IS_ERR_OR_NULL(dev))
 		return dev;
-- 
2.20.1


  reply	other threads:[~2020-06-15 15:21 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-15 15:20 [PATCH 0/5] cpuidle: psci: Various improvements for PSCI PM domains Ulf Hansson
2020-06-15 15:20 ` Ulf Hansson [this message]
2020-06-18 18:01   ` [PATCH 1/5] cpuidle: psci: Fail cpuidle registration if set OSI mode failed Lina Iyer
2020-06-26 14:33   ` Sudeep Holla
2020-06-26 14:47     ` Sudeep Holla
2020-06-15 15:20 ` [PATCH 2/5] cpuidle: psci: Fix error path via converting to a platform driver Ulf Hansson
2020-06-26 14:42   ` Sudeep Holla
2020-06-26 23:06     ` Ulf Hansson
2020-06-15 15:20 ` [PATCH 3/5] cpuidle: psci: Split into two separate build objects Ulf Hansson
2020-06-18 18:02   ` Lina Iyer
2020-06-26 14:44   ` Sudeep Holla
2020-06-15 15:20 ` [PATCH 4/5] cpuidle: psci: Convert PM domain to platform driver Ulf Hansson
2020-06-23 17:21   ` Lina Iyer
2020-06-15 15:20 ` [PATCH 5/5] cpuidle: psci: Prevent domain idlestates until consumers are ready Ulf Hansson
2020-06-15 18:05   ` Saravana Kannan
2020-06-16  6:49     ` Ulf Hansson
2020-06-16  7:05       ` Saravana Kannan
2020-06-24  9:57 ` [PATCH 0/5] cpuidle: psci: Various improvements for PSCI PM domains Ulf Hansson
2020-06-30 10:23 ` Lukasz Luba
2020-07-07 11:53   ` Ulf Hansson
2020-07-07 12:37     ` Lukasz Luba
2020-07-07 12:51       ` Ulf Hansson
2020-07-07 13:26         ` Lukasz Luba

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200615152054.6819-2-ulf.hansson@linaro.org \
    --to=ulf.hansson@linaro.org \
    --cc=Lorenzo.Pieralisi@arm.com \
    --cc=benjamin.gaignard@st.com \
    --cc=bjorn.andersson@linaro.org \
    --cc=daniel.lezcano@linaro.org \
    --cc=ilina@codeaurora.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rjw@rjwysocki.net \
    --cc=saravanak@google.com \
    --cc=sboyd@kernel.org \
    --cc=sudeep.holla@arm.com \
    --cc=vincent.guittot@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).