arm64: dts: qcom: Add MSM8996v3.0 DTSI file
authorKonrad Dybcio <konrad.dybcio@somainline.org>
Tue, 8 Jun 2021 20:21:40 +0000 (22:21 +0200)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Tue, 3 Aug 2021 23:14:34 +0000 (18:14 -0500)
Add an overlay for MSM8996v3.0, which is a pre-final revision
of the said SoC. It has some stark differences with regards to
GPU, or more specifically its power delivery path. Oh, and of
course a different msm-id.

Signed-off-by: Konrad Dybcio <konrad.dybcio@somainline.org>
Link: https://lore.kernel.org/r/20210608202143.247427-2-konrad.dybcio@somainline.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
arch/arm64/boot/dts/qcom/msm8996-v3.0.dtsi [new file with mode: 0644]

diff --git a/arch/arm64/boot/dts/qcom/msm8996-v3.0.dtsi b/arch/arm64/boot/dts/qcom/msm8996-v3.0.dtsi
new file mode 100644 (file)
index 0000000..5728583
--- /dev/null
@@ -0,0 +1,63 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org>
+ */
+
+#include "msm8996.dtsi"
+
+/ {
+       qcom,msm-id = <246 0x30000>;
+};
+
+ /*
+  * This revision seems to have differ GPU CPR
+  * parameters, GPU frequencies and some differences
+  * when it comes to voltage delivery to.. once again
+  * the GPU. Funnily enough, it's simpler to make it an
+  * overlay on top of 3.1 (the final one) than vice versa.
+  * The differences will show here as more and more
+  * features get enabled upstream.
+  */
+
+gpu_opp_table_3_0: gpu-opp-table-30 {
+       compatible = "operating-points-v2";
+
+       opp-624000000 {
+               opp-hz = /bits/ 64 <624000000>;
+               opp-level = <7>;
+       };
+
+       opp-560000000 {
+               opp-hz = /bits/ 64 <560000000>;
+               opp-level = <6>;
+       };
+
+       opp-510000000 {
+               opp-hz = /bits/ 64 <510000000>;
+               opp-level = <5>;
+       };
+
+       opp-401800000 {
+               opp-hz = /bits/ 64 <401800000>;
+               opp-level = <4>;
+       };
+
+       opp-315000000 {
+               opp-hz = /bits/ 64 <315000000>;
+               opp-level = <3>;
+       };
+
+       opp-214000000 {
+               opp-hz = /bits/ 64 <214000000>;
+               opp-level = <3>;
+       };
+
+       opp-133000000 {
+               opp-hz = /bits/ 64 <133000000>;
+               opp-level = <3>;
+       };
+};
+
+&gpu {
+       operating-points-v2 = <&gpu_opp_table_3_0>;
+};