qualcommax: backport more changes for ipq6018 and ipq8074
[openwrt/staging/jow.git] / target / linux / qualcommax / patches-6.1 / 0051-v6.6-arm64-dts-qcom-Add-rpm-proc-node-for-GLINK.patch
1 From 7e1acc8b92a3b67db1e5255adae2851d58d74434 Mon Sep 17 00:00:00 2001
2 From: Stephan Gerhold <stephan@gerhold.net>
3 Date: Thu, 15 Jun 2023 18:50:44 +0200
4 Subject: [PATCH] arm64: dts: qcom: Add rpm-proc node for GLINK gplatforms
5
6 Rather than having the RPM GLINK channels as the only child of a dummy
7 top-level rpm-glink node, switch to representing the RPM as remoteproc
8 like all the other remoteprocs (modem DSP, ...).
9
10 This allows assigning additional subdevices to it like the MPM
11 interrupt-controller or rpm-master-stats.
12
13 Tested-by: Konrad Dybcio <konrad.dybcio@linaro.org> # SM6375
14 Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
15 Link: https://lore.kernel.org/r/20230531-rpm-rproc-v3-11-a07dcdefd918@gerhold.net
16 Signed-off-by: Bjorn Andersson <andersson@kernel.org>
17 ---
18 arch/arm64/boot/dts/qcom/ipq6018.dtsi | 48 ++++----
19 arch/arm64/boot/dts/qcom/ipq9574.dtsi | 28 +++--
20 arch/arm64/boot/dts/qcom/msm8996.dtsi | 113 +++++++++----------
21 arch/arm64/boot/dts/qcom/msm8998.dtsi | 102 ++++++++---------
22 arch/arm64/boot/dts/qcom/qcm2290.dtsi | 126 ++++++++++-----------
23 arch/arm64/boot/dts/qcom/qcs404.dtsi | 152 +++++++++++++-------------
24 arch/arm64/boot/dts/qcom/sdm630.dtsi | 132 +++++++++++-----------
25 arch/arm64/boot/dts/qcom/sm6115.dtsi | 128 +++++++++++-----------
26 arch/arm64/boot/dts/qcom/sm6125.dtsi | 140 ++++++++++++------------
27 arch/arm64/boot/dts/qcom/sm6375.dtsi | 126 ++++++++++-----------
28 10 files changed, 566 insertions(+), 529 deletions(-)
29
30 --- a/arch/arm64/boot/dts/qcom/ipq6018.dtsi
31 +++ b/arch/arm64/boot/dts/qcom/ipq6018.dtsi
32 @@ -145,6 +145,32 @@
33 method = "smc";
34 };
35
36 + rpm: remoteproc {
37 + compatible = "qcom,ipq6018-rpm-proc", "qcom,rpm-proc";
38 +
39 + glink-edge {
40 + compatible = "qcom,glink-rpm";
41 + interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
42 + qcom,rpm-msg-ram = <&rpm_msg_ram>;
43 + mboxes = <&apcs_glb 0>;
44 +
45 + rpm_requests: rpm-requests {
46 + compatible = "qcom,rpm-ipq6018";
47 + qcom,glink-channels = "rpm_requests";
48 +
49 + regulators {
50 + compatible = "qcom,rpm-mp5496-regulators";
51 +
52 + ipq6018_s2: s2 {
53 + regulator-min-microvolt = <725000>;
54 + regulator-max-microvolt = <1062500>;
55 + regulator-always-on;
56 + };
57 + };
58 + };
59 + };
60 + };
61 +
62 reserved-memory {
63 #address-cells = <2>;
64 #size-cells = <2>;
65 @@ -181,28 +207,6 @@
66 };
67 };
68
69 - rpm-glink {
70 - compatible = "qcom,glink-rpm";
71 - interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
72 - qcom,rpm-msg-ram = <&rpm_msg_ram>;
73 - mboxes = <&apcs_glb 0>;
74 -
75 - rpm_requests: rpm-requests {
76 - compatible = "qcom,rpm-ipq6018";
77 - qcom,glink-channels = "rpm_requests";
78 -
79 - regulators {
80 - compatible = "qcom,rpm-mp5496-regulators";
81 -
82 - ipq6018_s2: s2 {
83 - regulator-min-microvolt = <725000>;
84 - regulator-max-microvolt = <1062500>;
85 - regulator-always-on;
86 - };
87 - };
88 - };
89 - };
90 -
91 smem {
92 compatible = "qcom,smem";
93 memory-region = <&smem_region>;