diff mbox series

[v2] arm64: dts: qcom: qrb2210-rb1: disable cluster power domains

Message ID 20240130-rb1-suspend-cluster-v2-1-5bc1109b0869@linaro.org
State Accepted
Commit 7f492d48f08207e4ee23edc926b11de9f720aa61
Headers show
Series [v2] arm64: dts: qcom: qrb2210-rb1: disable cluster power domains | expand

Commit Message

Dmitry Baryshkov Jan. 30, 2024, 4:48 p.m. UTC
If cluster domain idle state is enabled on the RB1, the board becomes
significantly less responsive. Under certain circumstances (if some of
the devices are disabled in kernel config) the board can even lock up.

It seems this is caused by the MPM not updating wakeup timer during CPU
idle (in the same way the RPMh updates it when cluster idle state is
entered).

Disable cluster domain idle for the RB1 board until MPM driver is fixed
to cooperate with the CPU idle states.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
Changes since v1:
- Updated commit message, expaning the 'ping' phrase to point to the
  timer being updated by MPM driver (Mani)
---
 arch/arm64/boot/dts/qcom/qrb2210-rb1.dts | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)


---
base-commit: 596764183be8ebb13352b281a442a1f1151c9b06
change-id: 20240130-rb1-suspend-cluster-76d7b7582b6a

Best regards,

Comments

Bjorn Andersson Feb. 7, 2024, 4:46 a.m. UTC | #1
On Tue, 30 Jan 2024 18:48:08 +0200, Dmitry Baryshkov wrote:
> If cluster domain idle state is enabled on the RB1, the board becomes
> significantly less responsive. Under certain circumstances (if some of
> the devices are disabled in kernel config) the board can even lock up.
> 
> It seems this is caused by the MPM not updating wakeup timer during CPU
> idle (in the same way the RPMh updates it when cluster idle state is
> entered).
> 
> [...]

Applied, thanks!

[1/1] arm64: dts: qcom: qrb2210-rb1: disable cluster power domains
      commit: 7f492d48f08207e4ee23edc926b11de9f720aa61

Best regards,
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts b/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts
index 64b2ab286279..6e9dd0312adc 100644
--- a/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts
+++ b/arch/arm64/boot/dts/qcom/qrb2210-rb1.dts
@@ -177,6 +177,24 @@  vph_pwr: regulator-vph-pwr {
 	};
 };
 
+&CPU_PD0 {
+	/delete-property/ power-domains;
+};
+
+&CPU_PD1 {
+	/delete-property/ power-domains;
+};
+
+&CPU_PD2 {
+	/delete-property/ power-domains;
+};
+
+&CPU_PD3 {
+	/delete-property/ power-domains;
+};
+
+/delete-node/ &CLUSTER_PD;
+
 &gpi_dma0 {
 	status = "okay";
 };