2023-06-27 16:42:01

by Konrad Dybcio

[permalink] [raw]
Subject: [PATCH 02/11] arm64: dts: qcom: msm8939: Drop "qcom,idle-state-spc" compatible

As of today, the only cool and legal way to get ARM64 SMP going is
via PSCI (or spin tables). Sadly, not all chip and device vendors were
considerate of this in the early days of arm64. Qualcomm, for example
reused their tried-and-true spin-up method from MSM8974 and their Krait/
arm32 Cortex designs.

MSM8916 supports SMP with its arm32 dt overlay, as probably could 8939.
But the arm64 DT should not define non-PSCI SMP or CPUidle stuff.

Drop the qcom,idle-state-spc compatible (associated with Qualcomm-specific
CPUIdle) to make the dt checker happy:

apq8039-t2.dtb: idle-states: cpu-sleep-0:compatible:
['qcom,idle-state-spc', 'arm,idle-state'] is too long

Fixes: 61550c6c156c ("arm64: dts: qcom: Add msm8939 SoC")
Signed-off-by: Konrad Dybcio <[email protected]>
---
arch/arm64/boot/dts/qcom/msm8939.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8939.dtsi b/arch/arm64/boot/dts/qcom/msm8939.dtsi
index 05d8abbbc840..38fc22e66bda 100644
--- a/arch/arm64/boot/dts/qcom/msm8939.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8939.dtsi
@@ -155,7 +155,7 @@ CPU7: cpu@3 {

idle-states {
CPU_SLEEP_0: cpu-sleep-0 {
- compatible ="qcom,idle-state-spc", "arm,idle-state";
+ compatible = "arm,idle-state";
entry-latency-us = <130>;
exit-latency-us = <150>;
min-residency-us = <2000>;

--
2.41.0



2023-06-27 18:03:02

by Benjamin Li

[permalink] [raw]
Subject: Re: [PATCH 02/11] arm64: dts: qcom: msm8939: Drop "qcom,idle-state-spc" compatible

On 6/27/23 9:24 AM, Konrad Dybcio wrote:
> As of today, the only cool and legal way to get ARM64 SMP going is
> via PSCI (or spin tables). Sadly, not all chip and device vendors were
> considerate of this in the early days of arm64. Qualcomm, for example
> reused their tried-and-true spin-up method from MSM8974 and their Krait/
> arm32 Cortex designs.
>
> MSM8916 supports SMP with its arm32 dt overlay, as probably could 8939.
> But the arm64 DT should not define non-PSCI SMP or CPUidle stuff.
>
> Drop the qcom,idle-state-spc compatible (associated with Qualcomm-specific
> CPUIdle) to make the dt checker happy:
>
> apq8039-t2.dtb: idle-states: cpu-sleep-0:compatible:
> ['qcom,idle-state-spc', 'arm,idle-state'] is too long
>
> Fixes: 61550c6c156c ("arm64: dts: qcom: Add msm8939 SoC")
> Signed-off-by: Konrad Dybcio <[email protected]>

Reviewed-by: Benjamin Li <[email protected]>