From: Sudeep Holla <sudeep.holla@kernel.org>
To: arm-scmi@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Cc: Sudeep Holla <sudeep.holla@kernel.org>,
Ulf Hansson <ulfh@kernel.org>,
Cristian Marussi <cristian.marussi@arm.com>,
Kevin Hilman <khilman@baylibre.com>,
Ulf Hansson <ulf.hansson@oss.qualcomm.com>
Subject: [PATCH RESEND 1/2] pmdomain: arm_scmi: Skip domains that fail initialization
Date: Mon, 9 Nov 2026 15:53:31 +0000 [thread overview]
Message-ID: <20261109155332.1686594-1-sudeep.holla@kernel.org> (raw)
pm_genpd_init() can fail while allocating generic power-domain state.
The SCMI driver ignores that error and stores the partially initialized
domain in the onecell array. Provider registration then fails because that
domain was never added to the global genpd list.
Preserve support for partially available SCMI power domains. Log the
failure and leave the corresponding onecell entry NULL so the other
initialized domains remain available. Explicitly skip empty slots when
unwinding provider registration failures.
Fixes: 898216c97ed2 ("firmware: arm_scmi: add device power domain support using genpd")
Signed-off-by: Sudeep Holla <sudeep.holla@kernel.org>
---
drivers/pmdomain/arm/scmi_pm_domain.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
Resending
https://lore.kernel.org/all/20260923101608.4180057-1-sudeep.holla@kernel.org/
diff --git a/drivers/pmdomain/arm/scmi_pm_domain.c b/drivers/pmdomain/arm/scmi_pm_domain.c
index fff7b4f438ca..b95b24470ba5 100644
--- a/drivers/pmdomain/arm/scmi_pm_domain.c
+++ b/drivers/pmdomain/arm/scmi_pm_domain.c
@@ -99,8 +99,13 @@ static int scmi_pm_domain_probe(struct scmi_device *sdev)
scmi_pd->genpd.power_on = scmi_pd_power_on;
scmi_pd->genpd.flags = GENPD_FLAG_ACTIVE_WAKEUP;
- pm_genpd_init(&scmi_pd->genpd, NULL,
- state == SCMI_POWER_STATE_GENERIC_OFF);
+ ret = pm_genpd_init(&scmi_pd->genpd, NULL,
+ state == SCMI_POWER_STATE_GENERIC_OFF);
+ if (ret) {
+ dev_warn(dev, "failed to initialize domain %d: %d\n",
+ i, ret);
+ continue;
+ }
domains[i] = &scmi_pd->genpd;
}
@@ -126,8 +131,11 @@ static int scmi_pm_domain_probe(struct scmi_device *sdev)
return 0;
err_rm_genpds:
- for (i = num_domains - 1; i >= 0; i--)
+ for (i = num_domains - 1; i >= 0; i--) {
+ if (!domains[i])
+ continue;
pm_genpd_remove(domains[i]);
+ }
return ret;
}
--
2.43.0
next reply other threads:[~2026-11-09 15:53 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-09 15:53 Sudeep Holla [this message]
2026-11-09 15:53 ` [PATCH RESEND 2/2] pmdomain: arm_scmi: Propagate domain hierarchy setup failures Sudeep Holla
2026-11-11 12:11 ` [PATCH RESEND 1/2] pmdomain: arm_scmi: Skip domains that fail initialization Sudeep Holla
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=20261109155332.1686594-1-sudeep.holla@kernel.org \
--to=sudeep.holla@kernel.org \
--cc=arm-scmi@vger.kernel.org \
--cc=cristian.marussi@arm.com \
--cc=khilman@baylibre.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=ulf.hansson@oss.qualcomm.com \
--cc=ulfh@kernel.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