[PATCH v2] arm64: dts: qcom: sdm850-lenovo-yoga-c630: lower PSCI cluster idle

Dmitry Baryshkov posted 1 patch 1 month, 2 weeks ago
arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 4 ++++
1 file changed, 4 insertions(+)
[PATCH v2] arm64: dts: qcom: sdm850-lenovo-yoga-c630: lower PSCI cluster idle
Posted by Dmitry Baryshkov 1 month, 2 weeks ago
With the default PSCI suspend value for cluster idle state Lenovo Yoga
C630 isn't stable enough. For example it might reset if display device
isn't probed early enough. Drop the bit 0x4000 from the PSCI suspend
value to make C630 work in stable way. The bit was found by
expertimenting with the cluster idle PSCI value. Most likely it results
in the less deep sleep and more energy beign spent in the suspend state,
but it's better than the non-stable system behaviour.

Fixes: a1ade6cac5a2 ("arm64: dts: qcom: sdm845: Switch PSCI cpu idle states from PC to OSI")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
Changes in v2:
- Correct the bit value to drop a single bit instead of changing
  multiple bits. Expanded the commit message to explain the change.
- Link to v1: https://patch.msgid.link/20260428-c630-fix-idle-v1-1-29d0da326eb3@oss.qualcomm.com
---
 arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
index e41200839dbe..8cdaef5360d1 100644
--- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
+++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
@@ -347,6 +347,10 @@ &cdsp_pas {
 	status = "okay";
 };
 
+&cluster_sleep_0 {
+	arm,psci-suspend-param = <0x41008244>;
+};
+
 &gcc {
 	protected-clocks = <GCC_QSPI_CORE_CLK>,
 			   <GCC_QSPI_CORE_CLK_SRC>,

---
base-commit: bee6ea30c48788e18348309f891ed8afbf7702ac
change-id: 20260428-c630-fix-idle-ed0a161d4050

Best regards,
--  
With best wishes
Dmitry
Re: [PATCH v2] arm64: dts: qcom: sdm850-lenovo-yoga-c630: lower PSCI cluster idle
Posted by Abel Vesa 1 month, 2 weeks ago
On 26-04-29 01:27:12, Dmitry Baryshkov wrote:
> With the default PSCI suspend value for cluster idle state Lenovo Yoga
> C630 isn't stable enough. For example it might reset if display device
> isn't probed early enough. Drop the bit 0x4000 from the PSCI suspend
> value to make C630 work in stable way. The bit was found by
> expertimenting with the cluster idle PSCI value. Most likely it results
> in the less deep sleep and more energy beign spent in the suspend state,
> but it's better than the non-stable system behaviour.
> 
> Fixes: a1ade6cac5a2 ("arm64: dts: qcom: sdm845: Switch PSCI cpu idle states from PC to OSI")
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>

Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>