]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: qcom: qcs615: Add mproc node for SEMP2P
authorKyle Deng <quic_chunkaid@quicinc.com>
Mon, 26 May 2025 05:21:49 +0000 (13:21 +0800)
committerBjorn Andersson <andersson@kernel.org>
Wed, 18 Jun 2025 04:08:31 +0000 (23:08 -0500)
The Shared Memory Point to Point (SMP2P) protocol facilitates
communication of a single 32-bit value between two processors.
Add these two nodes for remoteproc enablement on QCS615 SoC.

Signed-off-by: Kyle Deng <quic_chunkaid@quicinc.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
Link: https://lore.kernel.org/r/20250526-add_qcs615_remoteproc_support-v4-3-06a7d8bed0b5@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/qcs615.dtsi

index 559d3a4ba605c19c140aee235cb99e0d31bffeab..6b1c4623530b71dd8a33c2afc8e991c2ea7d4f32 100644 (file)
                qcom,bcm-voters = <&apps_bcm_voter>;
        };
 
+       smp2p-adsp {
+               compatible = "qcom,smp2p";
+               qcom,smem = <443>, <429>;
+               interrupts = <GIC_SPI 172 IRQ_TYPE_EDGE_RISING>;
+               /* On this platform, bit 26 (normally SLPI) is repurposed for ADSP */
+               mboxes = <&apss_shared 26>;
+
+               qcom,local-pid = <0>;
+               qcom,remote-pid = <2>;
+
+               adsp_smp2p_out: master-kernel {
+                       qcom,entry-name = "master-kernel";
+                       #qcom,smem-state-cells = <1>;
+               };
+
+               adsp_smp2p_in: slave-kernel {
+                       qcom,entry-name = "slave-kernel";
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+       };
+
+       smp2p-cdsp {
+               compatible = "qcom,smp2p";
+               qcom,smem = <94>, <432>;
+               interrupts = <GIC_SPI 576 IRQ_TYPE_EDGE_RISING>;
+               mboxes = <&apss_shared 6>;
+
+               qcom,local-pid = <0>;
+               qcom,remote-pid = <5>;
+
+               cdsp_smp2p_out: master-kernel {
+                       qcom,entry-name = "master-kernel";
+                       #qcom,smem-state-cells = <1>;
+               };
+
+               cdsp_smp2p_in: slave-kernel {
+                       qcom,entry-name = "slave-kernel";
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+               };
+
+       };
+
        qup_opp_table: opp-table-qup {
                compatible = "operating-points-v2";
                opp-shared;