[PATCH v3 4/4] arm64: dts: qcom: Skip suspend mode switch on MSM8917 and MSM8937
From: Reza Kurniawan
Date: Thu Oct 22 2026 - 05:49:52 EST
The PSCI firmware on Qualcomm MSM8917 and MSM8937 reports to support
OS-initiated suspend mode but rejects call to PSCI_SET_SUSPEND_MODE with
NOT_SUPPORTED. psci_set_osi_mode() then fails with -EOPNOTSUPP and
probe of psci-cpuidle-domain is aborted:
psci-cpuidle-domain psci: probe with driver psci-cpuidle-domain failed
with error -95
Skip the mode switch on these platforms and continue with the topology
that was already built.
This is expected to be safe since it matches the downstream kernel
behavior, which manages the cluster power level in addition to the CPU
power level, just like Linux does when OSI is supported.
Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxxxx>
Signed-off-by: Reza Kurniawan <imkyufie@xxxxxxxxx>
---
arch/arm64/boot/dts/qcom/msm8917.dtsi | 1 +
arch/arm64/boot/dts/qcom/msm8937.dtsi | 1 +
2 files changed, 2 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/msm8917.dtsi b/arch/arm64/boot/dts/qcom/msm8917.dtsi
index 06f7e7f57c..7730977e6e 100644
--- a/arch/arm64/boot/dts/qcom/msm8917.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8917.dtsi
@@ -182,6 +182,7 @@ pmu {
psci {
compatible = "arm,psci-1.0";
method = "smc";
+ skip-suspend-mode-switch;
cluster_pd: power-domain-cluster {
#power-domain-cells = <0>;
diff --git a/arch/arm64/boot/dts/qcom/msm8937.dtsi b/arch/arm64/boot/dts/qcom/msm8937.dtsi
index 7de6447de4..a66a544f30 100644
--- a/arch/arm64/boot/dts/qcom/msm8937.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8937.dtsi
@@ -311,6 +311,7 @@ pmu {
psci {
compatible = "arm,psci-1.0";
method = "smc";
+ skip-suspend-mode-switch;
};
rpm: remoteproc {
--
2.56.0