arm64: dts: qcom: sdm630: Add support for modem remoteproc
authorAlexey Minnekhanov <alexeymin@postmarketos.org>
Wed, 19 Jul 2023 09:34:58 +0000 (12:34 +0300)
committerBjorn Andersson <andersson@kernel.org>
Tue, 19 Sep 2023 21:31:53 +0000 (14:31 -0700)
Modem subsystem in SDM630/660 is similar to MSM8998 and
device tree node for it is based on the one from msm8998.dtsi.

Signed-off-by: Alexey Minnekhanov <alexeymin@postmarketos.org>
Link: https://lore.kernel.org/r/20230719093458.2668842-1-alexeymin@postmarketos.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sdm630.dtsi

index ec6003212c4d5f6a4ed62b97bb134f3b718bdbd6..d8af72f3682e6f29d52f3201771f4db288574509 100644 (file)
                        };
                };
 
+               remoteproc_mss: remoteproc@4080000 {
+                       compatible = "qcom,sdm660-mss-pil";
+                       reg = <0x04080000 0x100>, <0x04180000 0x40>;
+                       reg-names = "qdsp6", "rmb";
+
+                       interrupts-extended = <&intc GIC_SPI 448 IRQ_TYPE_EDGE_RISING>,
+                                             <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
+                                             <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
+                                             <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
+                                             <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
+                                             <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
+                       interrupt-names = "wdog",
+                                         "fatal",
+                                         "ready",
+                                         "handover",
+                                         "stop-ack",
+                                         "shutdown-ack";
+
+                       clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
+                                <&gcc GCC_BIMC_MSS_Q6_AXI_CLK>,
+                                <&gcc GCC_BOOT_ROM_AHB_CLK>,
+                                <&gcc GPLL0_OUT_MSSCC>,
+                                <&gcc GCC_MSS_SNOC_AXI_CLK>,
+                                <&gcc GCC_MSS_MNOC_BIMC_AXI_CLK>,
+                                <&rpmcc RPM_SMD_QDSS_CLK>,
+                                <&rpmcc RPM_SMD_XO_CLK_SRC>;
+                       clock-names = "iface",
+                                     "bus",
+                                     "mem",
+                                     "gpll0_mss",
+                                     "snoc_axi",
+                                     "mnoc_axi",
+                                     "qdss",
+                                     "xo";
+
+                       qcom,smem-states = <&modem_smp2p_out 0>;
+                       qcom,smem-state-names = "stop";
+
+                       resets = <&gcc GCC_MSS_RESTART>;
+                       reset-names = "mss_restart";
+
+                       qcom,halt-regs = <&tcsr_regs_1 0x3000 0x5000 0x4000>;
+
+                       power-domains = <&rpmpd SDM660_VDDCX>,
+                                       <&rpmpd SDM660_VDDMX>;
+                       power-domain-names = "cx", "mx";
+
+                       memory-region = <&mba_region>, <&mpss_region>;
+
+                       status = "disabled";
+
+                       glink-edge {
+                               interrupts = <GIC_SPI 452 IRQ_TYPE_EDGE_RISING>;
+                               label = "modem";
+                               qcom,remote-pid = <1>;
+                               mboxes = <&apcs_glb 15>;
+                       };
+               };
+
                adreno_gpu: gpu@5000000 {
                        compatible = "qcom,adreno-508.0", "qcom,adreno";