devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750
@ 2025-12-09  7:37 Alexey Klimov
  2025-12-09  7:37 ` [PATCH RFT v3 1/2] arm64: dts: qcom: sm8750: add memory node for adsp fastrpc Alexey Klimov
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Alexey Klimov @ 2025-12-09  7:37 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel, Srinivas Kandagatla,
	Ekansh Gupta, Alexey Klimov

Please test these changes therefore RFT tag. The fastrpc testing
application under linux doesn't work for me but I was told there
is a setup available somewhere in Qualcomm where this can be tested
(perhaps android?).

Changes from prev version:
- split patches into two: one adds mem node, second one
  adds fasrpc nodes.
- updated commit description.

Previous version:
https://lore.kernel.org/linux-arm-msm/20250805162041.47412-1-alexey.klimov@linaro.org/

Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
---
Alexey Klimov (2):
      arm64: dts: qcom: sm8750: add memory node for adsp fastrpc
      arm64: dts: qcom: sm8750: add ADSP fastrpc-compute-cb nodes

 arch/arm64/boot/dts/qcom/sm8750.dtsi | 69 ++++++++++++++++++++++++++++++++++++
 1 file changed, 69 insertions(+)
---
base-commit: c75caf76ed86bbc15a72808f48f8df1608a0886c
change-id: 20251209-sm8750-fastrpc-adsp-5219ef9f3adf

Best regards,
-- 
Alexey Klimov <alexey.klimov@linaro.org>


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

* [PATCH RFT v3 1/2] arm64: dts: qcom: sm8750: add memory node for adsp fastrpc
  2025-12-09  7:37 [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750 Alexey Klimov
@ 2025-12-09  7:37 ` Alexey Klimov
  2025-12-16 14:07   ` Konrad Dybcio
  2025-12-09  7:38 ` [PATCH RFT v3 2/2] arm64: dts: qcom: sm8750: add ADSP fastrpc-compute-cb nodes Alexey Klimov
  2025-12-12 15:50 ` [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750 Alexey Klimov
  2 siblings, 1 reply; 7+ messages in thread
From: Alexey Klimov @ 2025-12-09  7:37 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel, Srinivas Kandagatla,
	Ekansh Gupta, Alexey Klimov

Add optional memory heap node that can be used for ADSP fastrpc.

Cc: Ekansh Gupta <quic_ekangupt@quicinc.com>
Cc: Srinivas Kandagatla <srini@kernel.org>
Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
---
 arch/arm64/boot/dts/qcom/sm8750.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sm8750.dtsi b/arch/arm64/boot/dts/qcom/sm8750.dtsi
index 3f0b57f428bbb388521c27d9ae96bbef3d62b2e2..be89c65163bf0480100c09c883b68d03455c1870 100644
--- a/arch/arm64/boot/dts/qcom/sm8750.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8750.dtsi
@@ -524,6 +524,14 @@ llcc_lpi_mem: llcc-lpi@ff800000 {
 			reg = <0x0 0xff800000 0x0 0x800000>;
 			no-map;
 		};
+
+		adsp_rpc_remote_heap_mem: adsp-rpc-remote-heap {
+			compatible = "shared-dma-pool";
+			alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
+			alignment = <0x0 0x400000>;
+			size = <0x0 0xc00000>;
+			reusable;
+		};
 	};
 
 	smp2p-adsp {

-- 
2.47.3


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

* [PATCH RFT v3 2/2] arm64: dts: qcom: sm8750: add ADSP fastrpc-compute-cb nodes
  2025-12-09  7:37 [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750 Alexey Klimov
  2025-12-09  7:37 ` [PATCH RFT v3 1/2] arm64: dts: qcom: sm8750: add memory node for adsp fastrpc Alexey Klimov
@ 2025-12-09  7:38 ` Alexey Klimov
  2025-12-12 15:50 ` [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750 Alexey Klimov
  2 siblings, 0 replies; 7+ messages in thread
From: Alexey Klimov @ 2025-12-09  7:38 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel, Srinivas Kandagatla,
	Ekansh Gupta, Alexey Klimov

Add ADSP fastrpc nodes for sm8750 SoC.

Cc: Ekansh Gupta <quic_ekangupt@quicinc.com>
Cc: Srinivas Kandagatla <srini@kernel.org>
Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
---
 arch/arm64/boot/dts/qcom/sm8750.dtsi | 61 ++++++++++++++++++++++++++++++++++++
 1 file changed, 61 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sm8750.dtsi b/arch/arm64/boot/dts/qcom/sm8750.dtsi
index be89c65163bf0480100c09c883b68d03455c1870..b45c627c77a6194cf075a39707ea82bde4808e81 100644
--- a/arch/arm64/boot/dts/qcom/sm8750.dtsi
+++ b/arch/arm64/boot/dts/qcom/sm8750.dtsi
@@ -7,6 +7,7 @@
 #include <dt-bindings/clock/qcom,sm8750-gcc.h>
 #include <dt-bindings/clock/qcom,sm8750-tcsr.h>
 #include <dt-bindings/dma/qcom-gpi.h>
+#include <dt-bindings/firmware/qcom,scm.h>
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/interconnect/qcom,icc.h>
 #include <dt-bindings/interconnect/qcom,sm8750-rpmh.h>
@@ -2243,6 +2244,66 @@ q6prmcc: clock-controller {
 						};
 					};
 				};
+
+				fastrpc {
+					compatible = "qcom,fastrpc";
+					qcom,glink-channels = "fastrpcglink-apps-dsp";
+					label = "adsp";
+					memory-region = <&adsp_rpc_remote_heap_mem>;
+					qcom,vmids = <QCOM_SCM_VMID_LPASS
+						      QCOM_SCM_VMID_ADSP_HEAP>;
+					#address-cells = <1>;
+					#size-cells = <0>;
+
+					compute-cb@3 {
+						compatible = "qcom,fastrpc-compute-cb";
+						reg = <3>;
+						iommus = <&apps_smmu 0x1003 0x80>,
+							 <&apps_smmu 0x1043 0x20>;
+						dma-coherent;
+					};
+
+					compute-cb@4 {
+						compatible = "qcom,fastrpc-compute-cb";
+						reg = <4>;
+						iommus = <&apps_smmu 0x1004 0x80>,
+							 <&apps_smmu 0x1044 0x20>;
+						dma-coherent;
+					};
+
+					compute-cb@5 {
+						compatible = "qcom,fastrpc-compute-cb";
+						reg = <5>;
+						iommus = <&apps_smmu 0x1005 0x80>,
+							 <&apps_smmu 0x1045 0x20>;
+						dma-coherent;
+					};
+
+					compute-cb@6 {
+						compatible = "qcom,fastrpc-compute-cb";
+						reg = <6>;
+						iommus = <&apps_smmu 0x1006 0x80>,
+							 <&apps_smmu 0x1046 0x20>;
+						dma-coherent;
+					};
+
+					compute-cb@7 {
+						compatible = "qcom,fastrpc-compute-cb";
+						reg = <7>;
+						iommus = <&apps_smmu 0x1007 0x40>,
+							 <&apps_smmu 0x1067 0x0>,
+							 <&apps_smmu 0x1087 0x0>;
+						dma-coherent;
+					};
+
+					compute-cb@8 {
+						compatible = "qcom,fastrpc-compute-cb";
+						reg = <8>;
+						iommus = <&apps_smmu 0x1008 0x80>,
+							 <&apps_smmu 0x1048 0x20>;
+						dma-coherent;
+					};
+				};
 			};
 		};
 

-- 
2.47.3


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

* Re: [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750
  2025-12-09  7:37 [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750 Alexey Klimov
  2025-12-09  7:37 ` [PATCH RFT v3 1/2] arm64: dts: qcom: sm8750: add memory node for adsp fastrpc Alexey Klimov
  2025-12-09  7:38 ` [PATCH RFT v3 2/2] arm64: dts: qcom: sm8750: add ADSP fastrpc-compute-cb nodes Alexey Klimov
@ 2025-12-12 15:50 ` Alexey Klimov
  2025-12-16 12:51   ` Konrad Dybcio
  2 siblings, 1 reply; 7+ messages in thread
From: Alexey Klimov @ 2025-12-12 15:50 UTC (permalink / raw)
  To: Srinivas Kandagatla, Ekansh Gupta, vkatoch, ekansh.gupta, chennak,
	srinivas.kandagatla
  Cc: linux-arm-msm, devicetree, linux-kernel, Bjorn Andersson,
	Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley

(adding more Qcom folks to To: header, who asked to send this as soon
as possible)

On Tue Dec 9, 2025 at 7:37 AM GMT, Alexey Klimov wrote:
> Please test these changes therefore RFT tag. The fastrpc testing
> application under linux doesn't work for me but I was told there
> is a setup available somewhere in Qualcomm where this can be tested
> (perhaps android?).

I found time to compile and run the testing application. Currently it
seems to be untested under Linux (mainly strlcpy thingy and no manual
where files are expected to be found), there are also a lot of compilation
warnings.

https://github.com/qualcomm/fastrpc/tree/development/test

root@linaro-developer:~/github/fastrpc/test# fastrpc_test -d 0 -U 0 -t linux -a v68
Test PASSED
Please look at the mini-dm logs or the adb logcat logs for DSP output
[PASS] libmultithreading.so


Allocate 4000 bytes from ION heap
Creating sequence of numbers from 0 to 999
Compute sum on domain 0

Call calculator_sum on the DSP
Sum = 499500

Call calculator_max on the DSP
Max value = 999
[PASS] libcalculator.so


Demonstrating FARF run-time logging

hap_example function PASSED
Please look at the mini-dm logs or the adb logcat logs for DSP output

Demonstrating HAP_mem.h APIs
Error Code 0x4e : returned from hap_example_mem_dmahandle(handle, fd, offset, buffer_length)

hap_example function FAILED
Please look at the mini-dm logs or the adb logcat logs for DSP output
Error occurred with selector MEM (id: 1): 78

Demonstrating HAP_perf.h APIs

hap_example function PASSED
Please look at the mini-dm logs or the adb logcat logs for DSP output
[FAIL] libhap_example.so (error code: 0x4e)


========================================
Test Summary:
  Total tests run:    3
  Passed:             2
  Failed:             1
  Skipped:            0
========================================

RESULT: 1 test(s) FAILED

But the result is the same for CDSP (was it tested prior merging?).
The same results are for v75.

Adsprpcd works with audio_pd though. Maybe Qualcomm can help with this?
I don't think I will have enough time to debug this and narrow it down,
also very soon I will lose access to the device.

Best regards,
Alexey



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

* Re: [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750
  2025-12-12 15:50 ` [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750 Alexey Klimov
@ 2025-12-16 12:51   ` Konrad Dybcio
  2025-12-17 11:56     ` Alexey Klimov
  0 siblings, 1 reply; 7+ messages in thread
From: Konrad Dybcio @ 2025-12-16 12:51 UTC (permalink / raw)
  To: Alexey Klimov, Srinivas Kandagatla, Ekansh Gupta, vkatoch,
	ekansh.gupta, chennak, srinivas.kandagatla
  Cc: linux-arm-msm, devicetree, linux-kernel, Bjorn Andersson,
	Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley

On 12/12/25 4:50 PM, Alexey Klimov wrote:
> (adding more Qcom folks to To: header, who asked to send this as soon
> as possible)
> 
> On Tue Dec 9, 2025 at 7:37 AM GMT, Alexey Klimov wrote:
>> Please test these changes therefore RFT tag. The fastrpc testing
>> application under linux doesn't work for me but I was told there
>> is a setup available somewhere in Qualcomm where this can be tested
>> (perhaps android?).

[...]

> ========================================
> Test Summary:
>   Total tests run:    3
>   Passed:             2
>   Failed:             1
>   Skipped:            0
> ========================================
> 
> RESULT: 1 test(s) FAILED
> 
> But the result is the same for CDSP (was it tested prior merging?).
> The same results are for v75.
> 
> Adsprpcd works with audio_pd though. Maybe Qualcomm can help with this?
> I don't think I will have enough time to debug this and narrow it down,
> also very soon I will lose access to the device.

Please open an issue in the repo with the above details so the FastRPC
folks can hopefully help sort this out

https://github.com/qualcomm/fastrpc/issues

Konrad

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

* Re: [PATCH RFT v3 1/2] arm64: dts: qcom: sm8750: add memory node for adsp fastrpc
  2025-12-09  7:37 ` [PATCH RFT v3 1/2] arm64: dts: qcom: sm8750: add memory node for adsp fastrpc Alexey Klimov
@ 2025-12-16 14:07   ` Konrad Dybcio
  0 siblings, 0 replies; 7+ messages in thread
From: Konrad Dybcio @ 2025-12-16 14:07 UTC (permalink / raw)
  To: Alexey Klimov, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel, Srinivas Kandagatla,
	Ekansh Gupta

On 12/9/25 8:37 AM, Alexey Klimov wrote:
> Add optional memory heap node that can be used for ADSP fastrpc.
> 
> Cc: Ekansh Gupta <quic_ekangupt@quicinc.com>
> Cc: Srinivas Kandagatla <srini@kernel.org>
> Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
> ---
>  arch/arm64/boot/dts/qcom/sm8750.dtsi | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sm8750.dtsi b/arch/arm64/boot/dts/qcom/sm8750.dtsi
> index 3f0b57f428bbb388521c27d9ae96bbef3d62b2e2..be89c65163bf0480100c09c883b68d03455c1870 100644
> --- a/arch/arm64/boot/dts/qcom/sm8750.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sm8750.dtsi
> @@ -524,6 +524,14 @@ llcc_lpi_mem: llcc-lpi@ff800000 {
>  			reg = <0x0 0xff800000 0x0 0x800000>;
>  			no-map;
>  		};
> +
> +		adsp_rpc_remote_heap_mem: adsp-rpc-remote-heap {
> +			compatible = "shared-dma-pool";
> +			alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;

Ekansh, perhaps you'd know.. is there any reason for this to only be
allocated in the lowest 4G?

Konrad

> +			alignment = <0x0 0x400000>;
> +			size = <0x0 0xc00000>;
> +			reusable;
> +		};
>  	};
>  
>  	smp2p-adsp {
> 

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

* Re: [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750
  2025-12-16 12:51   ` Konrad Dybcio
@ 2025-12-17 11:56     ` Alexey Klimov
  0 siblings, 0 replies; 7+ messages in thread
From: Alexey Klimov @ 2025-12-17 11:56 UTC (permalink / raw)
  To: Konrad Dybcio, Srinivas Kandagatla, Ekansh Gupta, vkatoch,
	ekansh.gupta, chennak, srinivas.kandagatla
  Cc: linux-arm-msm, devicetree, linux-kernel, Bjorn Andersson,
	Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley

On Tue Dec 16, 2025 at 12:51 PM GMT, Konrad Dybcio wrote:
> On 12/12/25 4:50 PM, Alexey Klimov wrote:
>> (adding more Qcom folks to To: header, who asked to send this as soon
>> as possible)
>> 
>> On Tue Dec 9, 2025 at 7:37 AM GMT, Alexey Klimov wrote:
>>> Please test these changes therefore RFT tag. The fastrpc testing
>>> application under linux doesn't work for me but I was told there
>>> is a setup available somewhere in Qualcomm where this can be tested
>>> (perhaps android?).
>
> [...]
>
>> ========================================
>> Test Summary:
>>   Total tests run:    3
>>   Passed:             2
>>   Failed:             1
>>   Skipped:            0
>> ========================================
>> 
>> RESULT: 1 test(s) FAILED
>> 
>> But the result is the same for CDSP (was it tested prior merging?).
>> The same results are for v75.
>> 
>> Adsprpcd works with audio_pd though. Maybe Qualcomm can help with this?
>> I don't think I will have enough time to debug this and narrow it down,
>> also very soon I will lose access to the device.
>
> Please open an issue in the repo with the above details so the FastRPC
> folks can hopefully help sort this out
>
> https://github.com/qualcomm/fastrpc/issues

Good idea. Thanks. Done.

Best regards,
Alexey

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

end of thread, other threads:[~2025-12-17 11:56 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-09  7:37 [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750 Alexey Klimov
2025-12-09  7:37 ` [PATCH RFT v3 1/2] arm64: dts: qcom: sm8750: add memory node for adsp fastrpc Alexey Klimov
2025-12-16 14:07   ` Konrad Dybcio
2025-12-09  7:38 ` [PATCH RFT v3 2/2] arm64: dts: qcom: sm8750: add ADSP fastrpc-compute-cb nodes Alexey Klimov
2025-12-12 15:50 ` [RFT PATCH v3 0/2] Adsp fastrpc support for sm8750 Alexey Klimov
2025-12-16 12:51   ` Konrad Dybcio
2025-12-17 11:56     ` Alexey Klimov

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).