devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/6] arm64: dts: qcom: qcs615: enable remoteprocs - ADSP and CDSP
@ 2025-05-16  3:27 Lijuan Gao
  2025-05-16  3:27 ` [PATCH v3 1/6] dt-bindings: remoteproc: qcom,sm8150-pas: Document QCS615 remoteproc Lijuan Gao
                   ` (5 more replies)
  0 siblings, 6 replies; 15+ messages in thread
From: Lijuan Gao @ 2025-05-16  3:27 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
	Lijuan Gao, Krzysztof Kozlowski, Kyle Deng, Konrad Dybcio

Enable the remote processor PAS loader for QCS615 ADSP and CDSP
processors. This allows different platforms/architectures to control
(power on, load firmware, power off) those remote processors while
abstracting the hardware differences. Additionally, and add a PIL region
in IMEM so that post mortem debug tools can collect ramdumps.

Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
---
Changes in v3:
- Update base-commit to tag: next-20250515.
- Collected Reviewed-by: tag.
- Add a comment for SLPI 26 in the smp2p-adsp node.
- Update the IMEM address to the starting address of the IMEM layout,
  and also update the offset address of pil-reloc.
- Link to v1: https://lore.kernel.org/r/20250507-add_qcs615_remoteproc_support-v2-0-52ac6cb43a39@quicinc.com

Changes in v2:
- Remove the qcom prefix from smp2p node name.
- Remove the unnecessary property qcom,ipc from smp2p node.
- Remove the unused node apcs: syscon.
- Remove the unused nodes from smp2p node, such as
  sleepstate_smp2p_out/in, smp2p_rdbg2_out/in, smp2p_rdbg5_out/in.
- Update the commit message for IMEM PIL info region.
- Update the remoteproc node names.
- Correct the size of register for remoteproc nodes.
- Add empty line before status properties.
- Link to v1: https://lore.kernel.org/r/20250423-add_qcs615_remoteproc_support-v1-0-a94fe8799f14@quicinc.com

---
Kyle Deng (1):
      arm64: dts: qcom: qcs615: Add mproc node for SEMP2P

Lijuan Gao (5):
      dt-bindings: remoteproc: qcom,sm8150-pas: Document QCS615 remoteproc
      dt-bindings: soc: qcom: add qcom,qcs615-imem compatible
      arm64: dts: qcom: qcs615: Add IMEM and PIL info region
      arm64: dts: qcom: qcs615: add ADSP and CDSP nodes
      arm64: dts: qcom: qcs615-ride: enable remoteprocs

 .../bindings/remoteproc/qcom,sm8150-pas.yaml       |  65 ++++++----
 .../devicetree/bindings/sram/qcom,imem.yaml        |   1 +
 arch/arm64/boot/dts/qcom/qcs615-ride.dts           |  12 ++
 arch/arm64/boot/dts/qcom/qcs615.dtsi               | 144 +++++++++++++++++++++
 4 files changed, 195 insertions(+), 27 deletions(-)
---
base-commit: 484803582c77061b470ac64a634f25f89715be3f
change-id: 20250516-add_qcs615_remoteproc_support-b85ca60e48a8

Best regards,
-- 
Lijuan Gao <quic_lijuang@quicinc.com>


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH v3 1/6] dt-bindings: remoteproc: qcom,sm8150-pas: Document QCS615 remoteproc
  2025-05-16  3:27 [PATCH v3 0/6] arm64: dts: qcom: qcs615: enable remoteprocs - ADSP and CDSP Lijuan Gao
@ 2025-05-16  3:27 ` Lijuan Gao
  2025-05-16  3:27 ` [PATCH v3 2/6] dt-bindings: soc: qcom: add qcom,qcs615-imem compatible Lijuan Gao
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 15+ messages in thread
From: Lijuan Gao @ 2025-05-16  3:27 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
	Lijuan Gao, Krzysztof Kozlowski

Document the components used to boot the ADSP and CDSP on the Qualcomm
QCS615 SoC. Use fallback to indicate the compatibility of the remoteproc
on the QCS615 with that on the SM8150.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
---
 .../bindings/remoteproc/qcom,sm8150-pas.yaml       | 65 +++++++++++++---------
 1 file changed, 38 insertions(+), 27 deletions(-)

diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
index 5dcc2a32c080049ac6c486614a5bd4d71fd3ed62..a8cddf7e2fe1a84064730d847d2f0601b67572ff 100644
--- a/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/qcom,sm8150-pas.yaml
@@ -15,17 +15,26 @@ description:
 
 properties:
   compatible:
-    enum:
-      - qcom,sc8180x-adsp-pas
-      - qcom,sc8180x-cdsp-pas
-      - qcom,sc8180x-slpi-pas
-      - qcom,sm8150-adsp-pas
-      - qcom,sm8150-cdsp-pas
-      - qcom,sm8150-mpss-pas
-      - qcom,sm8150-slpi-pas
-      - qcom,sm8250-adsp-pas
-      - qcom,sm8250-cdsp-pas
-      - qcom,sm8250-slpi-pas
+    oneOf:
+      - items:
+          - enum:
+              - qcom,qcs615-adsp-pas
+          - const: qcom,sm8150-adsp-pas
+      - items:
+          - enum:
+              - qcom,qcs615-cdsp-pas
+          - const: qcom,sm8150-cdsp-pas
+      - enum:
+          - qcom,sc8180x-adsp-pas
+          - qcom,sc8180x-cdsp-pas
+          - qcom,sc8180x-slpi-pas
+          - qcom,sm8150-adsp-pas
+          - qcom,sm8150-cdsp-pas
+          - qcom,sm8150-mpss-pas
+          - qcom,sm8150-slpi-pas
+          - qcom,sm8250-adsp-pas
+          - qcom,sm8250-cdsp-pas
+          - qcom,sm8250-slpi-pas
 
   reg:
     maxItems: 1
@@ -62,16 +71,17 @@ allOf:
   - if:
       properties:
         compatible:
-          enum:
-            - qcom,sc8180x-adsp-pas
-            - qcom,sc8180x-cdsp-pas
-            - qcom,sc8180x-slpi-pas
-            - qcom,sm8150-adsp-pas
-            - qcom,sm8150-cdsp-pas
-            - qcom,sm8150-slpi-pas
-            - qcom,sm8250-adsp-pas
-            - qcom,sm8250-cdsp-pas
-            - qcom,sm8250-slpi-pas
+          contains:
+            enum:
+              - qcom,sc8180x-adsp-pas
+              - qcom,sc8180x-cdsp-pas
+              - qcom,sc8180x-slpi-pas
+              - qcom,sm8150-adsp-pas
+              - qcom,sm8150-cdsp-pas
+              - qcom,sm8150-slpi-pas
+              - qcom,sm8250-adsp-pas
+              - qcom,sm8250-cdsp-pas
+              - qcom,sm8250-slpi-pas
     then:
       properties:
         interrupts:
@@ -88,12 +98,13 @@ allOf:
   - if:
       properties:
         compatible:
-          enum:
-            - qcom,sc8180x-adsp-pas
-            - qcom,sc8180x-cdsp-pas
-            - qcom,sm8150-adsp-pas
-            - qcom,sm8150-cdsp-pas
-            - qcom,sm8250-cdsp-pas
+          contains:
+            enum:
+              - qcom,sc8180x-adsp-pas
+              - qcom,sc8180x-cdsp-pas
+              - qcom,sm8150-adsp-pas
+              - qcom,sm8150-cdsp-pas
+              - qcom,sm8250-cdsp-pas
     then:
       properties:
         power-domains:

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH v3 2/6] dt-bindings: soc: qcom: add qcom,qcs615-imem compatible
  2025-05-16  3:27 [PATCH v3 0/6] arm64: dts: qcom: qcs615: enable remoteprocs - ADSP and CDSP Lijuan Gao
  2025-05-16  3:27 ` [PATCH v3 1/6] dt-bindings: remoteproc: qcom,sm8150-pas: Document QCS615 remoteproc Lijuan Gao
@ 2025-05-16  3:27 ` Lijuan Gao
  2025-05-16  3:27 ` [PATCH v3 3/6] arm64: dts: qcom: qcs615: Add mproc node for SEMP2P Lijuan Gao
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 15+ messages in thread
From: Lijuan Gao @ 2025-05-16  3:27 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
	Lijuan Gao, Krzysztof Kozlowski

Document qcom,qcs615-imem compatible. It has a child node for debugging
purposes.

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
---
 Documentation/devicetree/bindings/sram/qcom,imem.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/sram/qcom,imem.yaml b/Documentation/devicetree/bindings/sram/qcom,imem.yaml
index 2711f90d9664b70fcd1e2f7e2dfd3386ed5c1952..dc3b5a69b9254e7001a329bb2011305152316689 100644
--- a/Documentation/devicetree/bindings/sram/qcom,imem.yaml
+++ b/Documentation/devicetree/bindings/sram/qcom,imem.yaml
@@ -22,6 +22,7 @@ properties:
           - qcom,msm8974-imem
           - qcom,msm8976-imem
           - qcom,qcs404-imem
+          - qcom,qcs615-imem
           - qcom,qcs8300-imem
           - qcom,qdu1000-imem
           - qcom,sa8775p-imem

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH v3 3/6] arm64: dts: qcom: qcs615: Add mproc node for SEMP2P
  2025-05-16  3:27 [PATCH v3 0/6] arm64: dts: qcom: qcs615: enable remoteprocs - ADSP and CDSP Lijuan Gao
  2025-05-16  3:27 ` [PATCH v3 1/6] dt-bindings: remoteproc: qcom,sm8150-pas: Document QCS615 remoteproc Lijuan Gao
  2025-05-16  3:27 ` [PATCH v3 2/6] dt-bindings: soc: qcom: add qcom,qcs615-imem compatible Lijuan Gao
@ 2025-05-16  3:27 ` Lijuan Gao
  2025-05-16  8:54   ` Konrad Dybcio
  2025-05-16  3:27 ` [PATCH v3 4/6] arm64: dts: qcom: qcs615: Add IMEM and PIL info region Lijuan Gao
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 15+ messages in thread
From: Lijuan Gao @ 2025-05-16  3:27 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
	Lijuan Gao, Kyle Deng

From: Kyle Deng <quic_chunkaid@quicinc.com>

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>
Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
---
 arch/arm64/boot/dts/qcom/qcs615.dtsi | 44 ++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs615.dtsi b/arch/arm64/boot/dts/qcom/qcs615.dtsi
index f08ba09772f333adaade2d30897cf50c555a4d12..f922349758d11ec7fda1c43736a4bf290916e67f 100644
--- a/arch/arm64/boot/dts/qcom/qcs615.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs615.dtsi
@@ -332,6 +332,50 @@ mc_virt: interconnect-2 {
 		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;

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH v3 4/6] arm64: dts: qcom: qcs615: Add IMEM and PIL info region
  2025-05-16  3:27 [PATCH v3 0/6] arm64: dts: qcom: qcs615: enable remoteprocs - ADSP and CDSP Lijuan Gao
                   ` (2 preceding siblings ...)
  2025-05-16  3:27 ` [PATCH v3 3/6] arm64: dts: qcom: qcs615: Add mproc node for SEMP2P Lijuan Gao
@ 2025-05-16  3:27 ` Lijuan Gao
  2025-05-16  9:45   ` Konrad Dybcio
  2025-05-16  3:27 ` [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes Lijuan Gao
  2025-05-16  3:27 ` [PATCH v3 6/6] arm64: dts: qcom: qcs615-ride: enable remoteprocs Lijuan Gao
  5 siblings, 1 reply; 15+ messages in thread
From: Lijuan Gao @ 2025-05-16  3:27 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
	Lijuan Gao

Add a simple-mfd representing IMEM on QCS615 and define the PIL
relocation info region as its child. The PIL region in IMEM is used to
communicate load addresses of remoteproc to post mortem debug tools, so
that these tools can collect ramdumps.

Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
---
 arch/arm64/boot/dts/qcom/qcs615.dtsi | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs615.dtsi b/arch/arm64/boot/dts/qcom/qcs615.dtsi
index f922349758d11ec7fda1c43736a4bf290916e67f..dd54cfe7b7a6f03c1aa658ce3014d50478df5931 100644
--- a/arch/arm64/boot/dts/qcom/qcs615.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs615.dtsi
@@ -3290,6 +3290,20 @@ sram@c3f0000 {
 			reg = <0x0 0x0c3f0000 0x0 0x400>;
 		};
 
+		sram@146aa000 {
+			compatible = "qcom,qcs615-imem", "syscon", "simple-mfd";
+			reg = <0x0 0x14680000 0x0 0x2c000>;
+			ranges = <0 0 0x14680000 0x2c000>;
+
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			pil-reloc@2a94c {
+				compatible = "qcom,pil-reloc-info";
+				reg = <0x2a94c 0xc8>;
+			};
+		};
+
 		apps_smmu: iommu@15000000 {
 			compatible = "qcom,qcs615-smmu-500", "qcom,smmu-500", "arm,mmu-500";
 			reg = <0x0 0x15000000 0x0 0x80000>;

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes
  2025-05-16  3:27 [PATCH v3 0/6] arm64: dts: qcom: qcs615: enable remoteprocs - ADSP and CDSP Lijuan Gao
                   ` (3 preceding siblings ...)
  2025-05-16  3:27 ` [PATCH v3 4/6] arm64: dts: qcom: qcs615: Add IMEM and PIL info region Lijuan Gao
@ 2025-05-16  3:27 ` Lijuan Gao
  2025-05-16 22:11   ` Dmitry Baryshkov
  2025-05-16  3:27 ` [PATCH v3 6/6] arm64: dts: qcom: qcs615-ride: enable remoteprocs Lijuan Gao
  5 siblings, 1 reply; 15+ messages in thread
From: Lijuan Gao @ 2025-05-16  3:27 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
	Lijuan Gao, Konrad Dybcio

Add nodes for remoteprocs: ADSP and CDSP for QCS615 SoC to enable proper
remoteproc functionality.

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
---
 arch/arm64/boot/dts/qcom/qcs615.dtsi | 86 ++++++++++++++++++++++++++++++++++++
 1 file changed, 86 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs615.dtsi b/arch/arm64/boot/dts/qcom/qcs615.dtsi
index dd54cfe7b7a6f03c1aa658ce3014d50478df5931..b7d649822a35fd30366ecab2eeb7b2fced1b369d 100644
--- a/arch/arm64/boot/dts/qcom/qcs615.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs615.dtsi
@@ -473,6 +473,16 @@ smem_region: smem@86000000 {
 			no-map;
 			hwlocks = <&tcsr_mutex 3>;
 		};
+
+		rproc_cdsp_mem: rproc-cdsp@93b00000 {
+			reg = <0x0 0x93b00000 0x0 0x1e00000>;
+			no-map;
+		};
+
+		rproc_adsp_mem: rproc-adsp@95900000 {
+			reg = <0x0 0x95900000 0x0 0x1e00000>;
+			no-map;
+		};
 	};
 
 	soc: soc@0 {
@@ -3117,6 +3127,44 @@ cti@7900000 {
 			clock-names = "apb_pclk";
 		};
 
+		remoteproc_cdsp: remoteproc@8300000 {
+			compatible = "qcom,qcs615-cdsp-pas", "qcom,sm8150-cdsp-pas";
+			reg = <0x0 0x08300000 0x0 0x4040>;
+
+			interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_EDGE_RISING>,
+					      <&cdsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
+					      <&cdsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
+					      <&cdsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
+					      <&cdsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
+			interrupt-names = "wdog",
+					  "fatal",
+					  "ready",
+					  "handover",
+					  "stop-ack";
+
+			clocks = <&rpmhcc RPMH_CXO_CLK>;
+			clock-names = "xo";
+
+			power-domains = <&rpmhpd RPMHPD_CX>;
+			power-domain-names = "cx";
+
+			memory-region = <&rproc_cdsp_mem>;
+
+			qcom,qmp = <&aoss_qmp>;
+
+			qcom,smem-states = <&cdsp_smp2p_out 0>;
+			qcom,smem-state-names = "stop";
+
+			status = "disabled";
+
+			glink-edge {
+				interrupts = <GIC_SPI 574 IRQ_TYPE_EDGE_RISING>;
+				mboxes = <&apss_shared 4>;
+				label = "cdsp";
+				qcom,remote-pid = <5>;
+			};
+		};
+
 		pmu@90b6300 {
 			compatible = "qcom,qcs615-cpu-bwmon", "qcom,sdm845-bwmon";
 			reg = <0x0 0x090b6300 0x0 0x600>;
@@ -3751,6 +3799,44 @@ usb_2_dwc3: usb@a800000 {
 				maximum-speed = "high-speed";
 			};
 		};
+
+		remoteproc_adsp: remoteproc@62400000 {
+			compatible = "qcom,qcs615-adsp-pas", "qcom,sm8150-adsp-pas";
+			reg = <0x0 0x62400000 0x0 0x4040>;
+
+			interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
+					      <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
+					      <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
+					      <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
+					      <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
+			interrupt-names = "wdog",
+					  "fatal",
+					  "ready",
+					  "handover",
+					  "stop-ack";
+
+			clocks = <&rpmhcc RPMH_CXO_CLK>;
+			clock-names = "xo";
+
+			power-domains = <&rpmhpd RPMHPD_CX>;
+			power-domain-names = "cx";
+
+			memory-region = <&rproc_adsp_mem>;
+
+			qcom,qmp = <&aoss_qmp>;
+
+			qcom,smem-states = <&adsp_smp2p_out 0>;
+			qcom,smem-state-names = "stop";
+
+			status = "disabled";
+
+			glink_edge: glink-edge {
+				interrupts = <GIC_SPI 170 IRQ_TYPE_EDGE_RISING>;
+				mboxes = <&apss_shared 24>;
+				label = "lpass";
+				qcom,remote-pid = <2>;
+			};
+		};
 	};
 
 	arch_timer: timer {

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* [PATCH v3 6/6] arm64: dts: qcom: qcs615-ride: enable remoteprocs
  2025-05-16  3:27 [PATCH v3 0/6] arm64: dts: qcom: qcs615: enable remoteprocs - ADSP and CDSP Lijuan Gao
                   ` (4 preceding siblings ...)
  2025-05-16  3:27 ` [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes Lijuan Gao
@ 2025-05-16  3:27 ` Lijuan Gao
  5 siblings, 0 replies; 15+ messages in thread
From: Lijuan Gao @ 2025-05-16  3:27 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
	Lijuan Gao, Konrad Dybcio

Enable all remoteproc nodes on the qcs615-ride board and point to the
appropriate firmware files to allow proper functioning of the remote
processors.

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
---
 arch/arm64/boot/dts/qcom/qcs615-ride.dts | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs615-ride.dts b/arch/arm64/boot/dts/qcom/qcs615-ride.dts
index 2b5aa3c66867676bda59ff82b902b6e4974126f8..a6652e4817d1c218c7981b04daeb035e2852ac1a 100644
--- a/arch/arm64/boot/dts/qcom/qcs615-ride.dts
+++ b/arch/arm64/boot/dts/qcom/qcs615-ride.dts
@@ -240,6 +240,18 @@ &qupv3_id_0 {
 	status = "okay";
 };
 
+&remoteproc_adsp {
+	firmware-name = "qcom/qcs615/adsp.mbn";
+
+	status = "okay";
+};
+
+&remoteproc_cdsp {
+	firmware-name = "qcom/qcs615/cdsp.mbn";
+
+	status = "okay";
+};
+
 &rpmhcc {
 	clocks = <&xo_board_clk>;
 };

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 15+ messages in thread

* Re: [PATCH v3 3/6] arm64: dts: qcom: qcs615: Add mproc node for SEMP2P
  2025-05-16  3:27 ` [PATCH v3 3/6] arm64: dts: qcom: qcs615: Add mproc node for SEMP2P Lijuan Gao
@ 2025-05-16  8:54   ` Konrad Dybcio
  0 siblings, 0 replies; 15+ messages in thread
From: Konrad Dybcio @ 2025-05-16  8:54 UTC (permalink / raw)
  To: Lijuan Gao, Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel,
	Kyle Deng

On 5/16/25 5:27 AM, Lijuan Gao wrote:
> From: Kyle Deng <quic_chunkaid@quicinc.com>
> 
> 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>
> Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH v3 4/6] arm64: dts: qcom: qcs615: Add IMEM and PIL info region
  2025-05-16  3:27 ` [PATCH v3 4/6] arm64: dts: qcom: qcs615: Add IMEM and PIL info region Lijuan Gao
@ 2025-05-16  9:45   ` Konrad Dybcio
  2025-05-26  1:33     ` Lijuan Gao
  0 siblings, 1 reply; 15+ messages in thread
From: Konrad Dybcio @ 2025-05-16  9:45 UTC (permalink / raw)
  To: Lijuan Gao, Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel

On 5/16/25 5:27 AM, Lijuan Gao wrote:
> Add a simple-mfd representing IMEM on QCS615 and define the PIL
> relocation info region as its child. The PIL region in IMEM is used to
> communicate load addresses of remoteproc to post mortem debug tools, so
> that these tools can collect ramdumps.
> 
> Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
> ---
>  arch/arm64/boot/dts/qcom/qcs615.dtsi | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/qcs615.dtsi b/arch/arm64/boot/dts/qcom/qcs615.dtsi
> index f922349758d11ec7fda1c43736a4bf290916e67f..dd54cfe7b7a6f03c1aa658ce3014d50478df5931 100644
> --- a/arch/arm64/boot/dts/qcom/qcs615.dtsi
> +++ b/arch/arm64/boot/dts/qcom/qcs615.dtsi
> @@ -3290,6 +3290,20 @@ sram@c3f0000 {
>  			reg = <0x0 0x0c3f0000 0x0 0x400>;
>  		};
>  
> +		sram@146aa000 {

Please also update this unit address

with that

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad

> +			compatible = "qcom,qcs615-imem", "syscon", "simple-mfd";
> +			reg = <0x0 0x14680000 0x0 0x2c000>;
> +			ranges = <0 0 0x14680000 0x2c000>;
> +
> +			#address-cells = <1>;
> +			#size-cells = <1>;
> +
> +			pil-reloc@2a94c {
> +				compatible = "qcom,pil-reloc-info";
> +				reg = <0x2a94c 0xc8>;
> +			};
> +		};
> +
>  		apps_smmu: iommu@15000000 {
>  			compatible = "qcom,qcs615-smmu-500", "qcom,smmu-500", "arm,mmu-500";
>  			reg = <0x0 0x15000000 0x0 0x80000>;
> 

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes
  2025-05-16  3:27 ` [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes Lijuan Gao
@ 2025-05-16 22:11   ` Dmitry Baryshkov
  2025-05-17 16:59     ` Konrad Dybcio
  0 siblings, 1 reply; 15+ messages in thread
From: Dmitry Baryshkov @ 2025-05-16 22:11 UTC (permalink / raw)
  To: Lijuan Gao
  Cc: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio, kernel, linux-arm-msm, linux-remoteproc,
	devicetree, linux-kernel, Konrad Dybcio

On Fri, May 16, 2025 at 11:27:06AM +0800, Lijuan Gao wrote:
> Add nodes for remoteprocs: ADSP and CDSP for QCS615 SoC to enable proper
> remoteproc functionality.
> 
> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
> ---
>  arch/arm64/boot/dts/qcom/qcs615.dtsi | 86 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 86 insertions(+)

Is the MPSS not present on the QCS615? It was a part of the SM6150
design.

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes
  2025-05-16 22:11   ` Dmitry Baryshkov
@ 2025-05-17 16:59     ` Konrad Dybcio
  2025-05-19  3:18       ` Lijuan Gao
  2025-05-19  7:12       ` Lijuan Gao
  0 siblings, 2 replies; 15+ messages in thread
From: Konrad Dybcio @ 2025-05-17 16:59 UTC (permalink / raw)
  To: Dmitry Baryshkov, Lijuan Gao
  Cc: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio, kernel, linux-arm-msm, linux-remoteproc,
	devicetree, linux-kernel

On 5/17/25 12:11 AM, Dmitry Baryshkov wrote:
> On Fri, May 16, 2025 at 11:27:06AM +0800, Lijuan Gao wrote:
>> Add nodes for remoteprocs: ADSP and CDSP for QCS615 SoC to enable proper
>> remoteproc functionality.
>>
>> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>> Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
>> ---
>>  arch/arm64/boot/dts/qcom/qcs615.dtsi | 86 ++++++++++++++++++++++++++++++++++++
>>  1 file changed, 86 insertions(+)
> 
> Is the MPSS not present on the QCS615? It was a part of the SM6150
> design.

Hmm.. good point..

It's surely not there on QC*S*

it is there on SM6150 though, quite obviously

downstream ref:

https://github.com/ianmacd/gts6lwifi/blob/master/arch/arm64/boot/dts/qcom/sm6150.dtsi

Konrad

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes
  2025-05-17 16:59     ` Konrad Dybcio
@ 2025-05-19  3:18       ` Lijuan Gao
  2025-05-19  7:12       ` Lijuan Gao
  1 sibling, 0 replies; 15+ messages in thread
From: Lijuan Gao @ 2025-05-19  3:18 UTC (permalink / raw)
  To: Konrad Dybcio, Dmitry Baryshkov
  Cc: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio, kernel, linux-arm-msm, linux-remoteproc,
	devicetree, linux-kernel



在 5/18/2025 12:59 AM, Konrad Dybcio 写道:
> On 5/17/25 12:11 AM, Dmitry Baryshkov wrote:
>> On Fri, May 16, 2025 at 11:27:06AM +0800, Lijuan Gao wrote:
>>> Add nodes for remoteprocs: ADSP and CDSP for QCS615 SoC to enable proper
>>> remoteproc functionality.
>>>
>>> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>>> Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
>>> ---
>>>   arch/arm64/boot/dts/qcom/qcs615.dtsi | 86 ++++++++++++++++++++++++++++++++++++
>>>   1 file changed, 86 insertions(+)
>>
>> Is the MPSS not present on the QCS615? It was a part of the SM6150
>> design.
> 
> Hmm.. good point..
> 
> It's surely not there on QC*S*
> 
> it is there on SM6150 though, quite obviously
> 
> downstream ref:
> 
> https://github.com/ianmacd/gts6lwifi/blob/master/arch/arm64/boot/dts/qcom/sm6150.dtsi
> 
> Konrad

Thanks Konrad and Dmitry, I will add MPSS in next patch.
-- 
Thx and BRs
Lijuan Gao


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes
  2025-05-17 16:59     ` Konrad Dybcio
  2025-05-19  3:18       ` Lijuan Gao
@ 2025-05-19  7:12       ` Lijuan Gao
  2025-05-19 11:01         ` Dmitry Baryshkov
  1 sibling, 1 reply; 15+ messages in thread
From: Lijuan Gao @ 2025-05-19  7:12 UTC (permalink / raw)
  To: Konrad Dybcio, Dmitry Baryshkov
  Cc: Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio, kernel, linux-arm-msm, linux-remoteproc,
	devicetree, linux-kernel



在 5/18/2025 12:59 AM, Konrad Dybcio 写道:
> On 5/17/25 12:11 AM, Dmitry Baryshkov wrote:
>> On Fri, May 16, 2025 at 11:27:06AM +0800, Lijuan Gao wrote:
>>> Add nodes for remoteprocs: ADSP and CDSP for QCS615 SoC to enable proper
>>> remoteproc functionality.
>>>
>>> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>>> Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
>>> ---
>>>   arch/arm64/boot/dts/qcom/qcs615.dtsi | 86 ++++++++++++++++++++++++++++++++++++
>>>   1 file changed, 86 insertions(+)
>>
>> Is the MPSS not present on the QCS615? It was a part of the SM6150
>> design.
> 
> Hmm.. good point..
> 
> It's surely not there on QC*S*
> 
> it is there on SM6150 though, quite obviously
> 
> downstream ref:
> 
> https://github.com/ianmacd/gts6lwifi/blob/master/arch/arm64/boot/dts/qcom/sm6150.dtsi
> 
> Konrad

Hi Konrad and Dmitry,

I have confirmed with the relavant folks, and this variant of the QCS615 
does not support modem.

-- 
Thx and BRs
Lijuan Gao


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes
  2025-05-19  7:12       ` Lijuan Gao
@ 2025-05-19 11:01         ` Dmitry Baryshkov
  0 siblings, 0 replies; 15+ messages in thread
From: Dmitry Baryshkov @ 2025-05-19 11:01 UTC (permalink / raw)
  To: Lijuan Gao
  Cc: Konrad Dybcio, Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio, kernel, linux-arm-msm, linux-remoteproc,
	devicetree, linux-kernel

On Mon, May 19, 2025 at 03:12:39PM +0800, Lijuan Gao wrote:
> 
> 
> 在 5/18/2025 12:59 AM, Konrad Dybcio 写道:
> > On 5/17/25 12:11 AM, Dmitry Baryshkov wrote:
> > > On Fri, May 16, 2025 at 11:27:06AM +0800, Lijuan Gao wrote:
> > > > Add nodes for remoteprocs: ADSP and CDSP for QCS615 SoC to enable proper
> > > > remoteproc functionality.
> > > > 
> > > > Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> > > > Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
> > > > ---
> > > >   arch/arm64/boot/dts/qcom/qcs615.dtsi | 86 ++++++++++++++++++++++++++++++++++++
> > > >   1 file changed, 86 insertions(+)
> > > 
> > > Is the MPSS not present on the QCS615? It was a part of the SM6150
> > > design.
> > 
> > Hmm.. good point..
> > 
> > It's surely not there on QC*S*
> > 
> > it is there on SM6150 though, quite obviously
> > 
> > downstream ref:
> > 
> > https://github.com/ianmacd/gts6lwifi/blob/master/arch/arm64/boot/dts/qcom/sm6150.dtsi
> > 
> > Konrad
> 
> Hi Konrad and Dmitry,
> 
> I have confirmed with the relavant folks, and this variant of the QCS615
> does not support modem.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH v3 4/6] arm64: dts: qcom: qcs615: Add IMEM and PIL info region
  2025-05-16  9:45   ` Konrad Dybcio
@ 2025-05-26  1:33     ` Lijuan Gao
  0 siblings, 0 replies; 15+ messages in thread
From: Lijuan Gao @ 2025-05-26  1:33 UTC (permalink / raw)
  To: Konrad Dybcio, Bjorn Andersson, Mathieu Poirier, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Manivannan Sadhasivam,
	Konrad Dybcio
  Cc: kernel, linux-arm-msm, linux-remoteproc, devicetree, linux-kernel



在 5/16/2025 5:45 PM, Konrad Dybcio 写道:
> On 5/16/25 5:27 AM, Lijuan Gao wrote:
>> Add a simple-mfd representing IMEM on QCS615 and define the PIL
>> relocation info region as its child. The PIL region in IMEM is used to
>> communicate load addresses of remoteproc to post mortem debug tools, so
>> that these tools can collect ramdumps.
>>
>> Signed-off-by: Lijuan Gao <quic_lijuang@quicinc.com>
>> ---
>>   arch/arm64/boot/dts/qcom/qcs615.dtsi | 14 ++++++++++++++
>>   1 file changed, 14 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/qcs615.dtsi b/arch/arm64/boot/dts/qcom/qcs615.dtsi
>> index f922349758d11ec7fda1c43736a4bf290916e67f..dd54cfe7b7a6f03c1aa658ce3014d50478df5931 100644
>> --- a/arch/arm64/boot/dts/qcom/qcs615.dtsi
>> +++ b/arch/arm64/boot/dts/qcom/qcs615.dtsi
>> @@ -3290,6 +3290,20 @@ sram@c3f0000 {
>>   			reg = <0x0 0x0c3f0000 0x0 0x400>;
>>   		};
>>   
>> +		sram@146aa000 {
> 
> Please also update this unit address
sure, I will update it in next patch.
> 
> with that
> 
> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> 
> Konrad
> 
>> +			compatible = "qcom,qcs615-imem", "syscon", "simple-mfd";
>> +			reg = <0x0 0x14680000 0x0 0x2c000>;
>> +			ranges = <0 0 0x14680000 0x2c000>;
>> +
>> +			#address-cells = <1>;
>> +			#size-cells = <1>;
>> +
>> +			pil-reloc@2a94c {
>> +				compatible = "qcom,pil-reloc-info";
>> +				reg = <0x2a94c 0xc8>;
>> +			};
>> +		};
>> +
>>   		apps_smmu: iommu@15000000 {
>>   			compatible = "qcom,qcs615-smmu-500", "qcom,smmu-500", "arm,mmu-500";
>>   			reg = <0x0 0x15000000 0x0 0x80000>;
>>

-- 
Thx and BRs
Lijuan Gao


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2025-05-26  1:33 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-16  3:27 [PATCH v3 0/6] arm64: dts: qcom: qcs615: enable remoteprocs - ADSP and CDSP Lijuan Gao
2025-05-16  3:27 ` [PATCH v3 1/6] dt-bindings: remoteproc: qcom,sm8150-pas: Document QCS615 remoteproc Lijuan Gao
2025-05-16  3:27 ` [PATCH v3 2/6] dt-bindings: soc: qcom: add qcom,qcs615-imem compatible Lijuan Gao
2025-05-16  3:27 ` [PATCH v3 3/6] arm64: dts: qcom: qcs615: Add mproc node for SEMP2P Lijuan Gao
2025-05-16  8:54   ` Konrad Dybcio
2025-05-16  3:27 ` [PATCH v3 4/6] arm64: dts: qcom: qcs615: Add IMEM and PIL info region Lijuan Gao
2025-05-16  9:45   ` Konrad Dybcio
2025-05-26  1:33     ` Lijuan Gao
2025-05-16  3:27 ` [PATCH v3 5/6] arm64: dts: qcom: qcs615: add ADSP and CDSP nodes Lijuan Gao
2025-05-16 22:11   ` Dmitry Baryshkov
2025-05-17 16:59     ` Konrad Dybcio
2025-05-19  3:18       ` Lijuan Gao
2025-05-19  7:12       ` Lijuan Gao
2025-05-19 11:01         ` Dmitry Baryshkov
2025-05-16  3:27 ` [PATCH v3 6/6] arm64: dts: qcom: qcs615-ride: enable remoteprocs Lijuan Gao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).