summaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorStephan Gerhold <stephan@gerhold.net>2021-10-04 22:49:54 +0200
committerBjorn Andersson <bjorn.andersson@linaro.org>2021-10-23 22:35:38 -0500
commitd468f825b3fddef9f844365073745cbd0e319e8d (patch)
treeb67c3f8c97a8d0588bfa4533e89bbe80f83afd9a /arch/arm
parenta22f9a766e1dc61f8f6ee2edfe83d4d23d78e059 (diff)
downloadlinux-stable-d468f825b3fddef9f844365073745cbd0e319e8d.tar.gz
linux-stable-d468f825b3fddef9f844365073745cbd0e319e8d.tar.bz2
linux-stable-d468f825b3fddef9f844365073745cbd0e319e8d.zip
ARM: dts: qcom: msm8916: Add include for SMP without PSCI on ARM32
Add a special device tree include for MSM8916 on ARM32 that sets up SMP and cpuidle without PSCI. This is meant for devices with signed firmware that does not support PSCI and only allows booting ARM32 kernels. Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20211004204955.21077-14-stephan@gerhold.net
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/boot/dts/qcom-msm8916-smp.dtsi62
1 files changed, 62 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/qcom-msm8916-smp.dtsi b/arch/arm/boot/dts/qcom-msm8916-smp.dtsi
new file mode 100644
index 000000000000..36328dbe4212
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-msm8916-smp.dtsi
@@ -0,0 +1,62 @@
+// SPDX-License-Identifier: GPL-2.0-only
+
+/ {
+ cpus {
+ cpu@0 {
+ enable-method = "qcom,msm8916-smp";
+ };
+ cpu@1 {
+ enable-method = "qcom,msm8916-smp";
+ };
+ cpu@2 {
+ enable-method = "qcom,msm8916-smp";
+ };
+ cpu@3 {
+ enable-method = "qcom,msm8916-smp";
+ };
+
+ idle-states {
+ /delete-property/ entry-method;
+ };
+ };
+
+ psci {
+ status = "disabled";
+ };
+};
+
+&CPU_SLEEP_0 {
+ compatible = "qcom,idle-state-spc";
+};
+
+&cpu0_acc {
+ status = "okay";
+};
+
+&cpu0_saw {
+ status = "okay";
+};
+
+&cpu1_acc {
+ status = "okay";
+};
+
+&cpu1_saw {
+ status = "okay";
+};
+
+&cpu2_acc {
+ status = "okay";
+};
+
+&cpu2_saw {
+ status = "okay";
+};
+
+&cpu3_acc {
+ status = "okay";
+};
+
+&cpu3_saw {
+ status = "okay";
+};