public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/4] arm64: dts: qcom: sdm630/660 FastRPC fixes
@ 2026-04-22 15:39 Nickolay Goppen
  2026-04-22 15:39 ` [PATCH v3 1/4] arm64: dts: qcom: sdm660: set cdsp compute-cbs' regs properly Nickolay Goppen
                   ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Nickolay Goppen @ 2026-04-22 15:39 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Nickolay Goppen, Ekansh Gupta, linux-arm-msm, devicetree,
	linux-kernel, ~postmarketos/upstreaming, Konrad Dybcio,
	Dmitry Baryshkov

This series introduces fixes that make FastRPC on SDM660 work properly.
Currently only the calculator_example test passes on both ADSP and 
CDSP [1].
Also assign adsp_mem region to the ADSP's FastRPC node.

[1]: https://github.com/qualcomm/fastrpc/issues/269#issuecomment-4232125297

Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
---
Changes in v3:
- Brought back patch that changed adsp_mem to reusable (Ekansh Gupta)
- Changed adsp_mem to dynamic allocation (Ekansh Gupta)
- Fixed alignment of the vmids property of adsp
- Link to v2: https://patch.msgid.link/20260420-qcom-sdm660-cdsp-adsp-fastrpc-dts-fix-v2-0-f6c7ab3c889a@mainlining.org

Changes in v2:
- Dropped patch that changed adsp_mem to reusable
- Added vmids to fastrpc subnode of adsp (Ekansh Gupta)
- Link to v1: https://patch.msgid.link/20260415-qcom-sdm660-cdsp-adsp-fastrpc-dts-fix-v1-0-03b475b29554@mainlining.org

To: Bjorn Andersson <andersson@kernel.org>
To: Konrad Dybcio <konradybcio@kernel.org>
To: Rob Herring <robh@kernel.org>
To: Krzysztof Kozlowski <krzk+dt@kernel.org>
To: Conor Dooley <conor+dt@kernel.org>
To: Nickolay Goppen <setotau@mainlining.org>
Cc: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>
Cc: linux-arm-msm@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: ~postmarketos/upstreaming@lists.sr.ht
Cc: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

---
Nickolay Goppen (4):
      arm64: dts: qcom: sdm660: set cdsp compute-cbs' regs properly
      arm64: dts: qcom: sdm630: set adsp compute-cbs' regs properly
      arm64: dts: qcom: sdm630: describe adsp_mem region properly
      arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node

 arch/arm64/boot/dts/qcom/sdm630.dtsi | 28 +++++++++++++++++-----------
 arch/arm64/boot/dts/qcom/sdm660.dtsi | 36 ++++++++++++++++++------------------
 2 files changed, 35 insertions(+), 29 deletions(-)
---
base-commit: 6e0a8c0fe0818b244c6de3a449b3a7107808a459
change-id: 20260415-qcom-sdm660-cdsp-adsp-fastrpc-dts-fix-d0ca7632045a

Best regards,
--  
Nickolay Goppen <setotau@mainlining.org>


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

* [PATCH v3 1/4] arm64: dts: qcom: sdm660: set cdsp compute-cbs' regs properly
  2026-04-22 15:39 [PATCH v3 0/4] arm64: dts: qcom: sdm630/660 FastRPC fixes Nickolay Goppen
@ 2026-04-22 15:39 ` Nickolay Goppen
  2026-04-22 15:39 ` [PATCH v3 2/4] arm64: dts: qcom: sdm630: set adsp " Nickolay Goppen
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 14+ messages in thread
From: Nickolay Goppen @ 2026-04-22 15:39 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Nickolay Goppen, Ekansh Gupta, linux-arm-msm, devicetree,
	linux-kernel, ~postmarketos/upstreaming, Konrad Dybcio,
	Dmitry Baryshkov

Changing FastRPC compute-cbs' reg values to matching iommu streams
solves SMMU translation errors when trying to use FastRPC on CDSP
so change FastRPC compute-cbs' reg values that way

Fixes: c0c32a9e3493 ("arm64: dts: qcom: sdm630/660: Add CDSP-related nodes")
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>
Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
---
 arch/arm64/boot/dts/qcom/sdm660.dtsi | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sdm660.dtsi b/arch/arm64/boot/dts/qcom/sdm660.dtsi
index 3fd6dd82a992..0fca9662c64a 100644
--- a/arch/arm64/boot/dts/qcom/sdm660.dtsi
+++ b/arch/arm64/boot/dts/qcom/sdm660.dtsi
@@ -350,57 +350,57 @@ fastrpc {
 				#address-cells = <1>;
 				#size-cells = <0>;
 
-				compute-cb@5 {
+				compute-cb@3 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <5>;
+					reg = <3>;
 					iommus = <&cdsp_smmu 3>;
 				};
 
-				compute-cb@6 {
+				compute-cb@4 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <6>;
+					reg = <4>;
 					iommus = <&cdsp_smmu 4>;
 				};
 
-				compute-cb@7 {
+				compute-cb@5 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <7>;
+					reg = <5>;
 					iommus = <&cdsp_smmu 5>;
 				};
 
-				compute-cb@8 {
+				compute-cb@6 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <8>;
+					reg = <6>;
 					iommus = <&cdsp_smmu 6>;
 				};
 
-				compute-cb@9 {
+				compute-cb@7 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <9>;
+					reg = <7>;
 					iommus = <&cdsp_smmu 7>;
 				};
 
-				compute-cb@10 {
+				compute-cb@8 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <10>;
+					reg = <8>;
 					iommus = <&cdsp_smmu 8>;
 				};
 
-				compute-cb@11 {
+				compute-cb@9 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <11>;
+					reg = <9>;
 					iommus = <&cdsp_smmu 9>;
 				};
 
-				compute-cb@12 {
+				compute-cb@10 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <12>;
+					reg = <10>;
 					iommus = <&cdsp_smmu 10>;
 				};
 
-				compute-cb@13 {
+				compute-cb@11 {
 					compatible = "qcom,fastrpc-compute-cb";
-					reg = <13>;
+					reg = <11>;
 					iommus = <&cdsp_smmu 11>;
 				};
 			};

-- 
2.54.0


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

* [PATCH v3 2/4] arm64: dts: qcom: sdm630: set adsp compute-cbs' regs properly
  2026-04-22 15:39 [PATCH v3 0/4] arm64: dts: qcom: sdm630/660 FastRPC fixes Nickolay Goppen
  2026-04-22 15:39 ` [PATCH v3 1/4] arm64: dts: qcom: sdm660: set cdsp compute-cbs' regs properly Nickolay Goppen
@ 2026-04-22 15:39 ` Nickolay Goppen
  2026-04-22 15:39 ` [PATCH v3 3/4] arm64: dts: qcom: sdm630: describe adsp_mem region properly Nickolay Goppen
  2026-04-22 15:39 ` [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node Nickolay Goppen
  3 siblings, 0 replies; 14+ messages in thread
From: Nickolay Goppen @ 2026-04-22 15:39 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Nickolay Goppen, Ekansh Gupta, linux-arm-msm, devicetree,
	linux-kernel, ~postmarketos/upstreaming, Konrad Dybcio,
	Dmitry Baryshkov

Changing FastRPC compute-cbs' reg values to matching iommu streams
solves SMMU translation errors when trying to use FastRPC on ADSP
so change FastRPC compute-cbs' reg values that way

Fixes: af2ce7296643 ("arm64: dts: qcom: sdm630: Add FastRPC nodes to ADSP")
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>
Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
---
 arch/arm64/boot/dts/qcom/sdm630.dtsi | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
index bef3213165d6..4b47efdb57b2 100644
--- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
+++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
@@ -2459,27 +2459,27 @@ fastrpc {
 					#address-cells = <1>;
 					#size-cells = <0>;
 
-					compute-cb@1 {
+					compute-cb@3 {
 						compatible = "qcom,fastrpc-compute-cb";
-						reg = <1>;
+						reg = <3>;
 						iommus = <&lpass_smmu 3>;
 					};
 
-					compute-cb@2 {
+					compute-cb@7 {
 						compatible = "qcom,fastrpc-compute-cb";
-						reg = <2>;
+						reg = <7>;
 						iommus = <&lpass_smmu 7>;
 					};
 
-					compute-cb@3 {
+					compute-cb@8 {
 						compatible = "qcom,fastrpc-compute-cb";
-						reg = <3>;
+						reg = <8>;
 						iommus = <&lpass_smmu 8>;
 					};
 
-					compute-cb@4 {
+					compute-cb@9 {
 						compatible = "qcom,fastrpc-compute-cb";
-						reg = <4>;
+						reg = <9>;
 						iommus = <&lpass_smmu 9>;
 					};
 				};

-- 
2.54.0


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

* [PATCH v3 3/4] arm64: dts: qcom: sdm630: describe adsp_mem region properly
  2026-04-22 15:39 [PATCH v3 0/4] arm64: dts: qcom: sdm630/660 FastRPC fixes Nickolay Goppen
  2026-04-22 15:39 ` [PATCH v3 1/4] arm64: dts: qcom: sdm660: set cdsp compute-cbs' regs properly Nickolay Goppen
  2026-04-22 15:39 ` [PATCH v3 2/4] arm64: dts: qcom: sdm630: set adsp " Nickolay Goppen
@ 2026-04-22 15:39 ` Nickolay Goppen
  2026-04-22 15:52   ` Dmitry Baryshkov
  2026-04-23  9:09   ` Ekansh Gupta
  2026-04-22 15:39 ` [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node Nickolay Goppen
  3 siblings, 2 replies; 14+ messages in thread
From: Nickolay Goppen @ 2026-04-22 15:39 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Nickolay Goppen, Ekansh Gupta, linux-arm-msm, devicetree,
	linux-kernel, ~postmarketos/upstreaming, Konrad Dybcio

Downstream [1] this region is marked as shared, reusable and dynamic so
describe it that way.

[1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L448

Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
---
 arch/arm64/boot/dts/qcom/sdm630.dtsi | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
index 4b47efdb57b2..36b419dea153 100644
--- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
+++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
@@ -494,9 +494,12 @@ venus_region: venus@9f800000 {
 			no-map;
 		};
 
-		adsp_mem: adsp-region@f6000000 {
-			reg = <0x0 0xf6000000 0x0 0x800000>;
-			no-map;
+		adsp_mem: adsp-region {
+			compatible = "shared-dma-pool";
+			alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
+			alignment = <0x0 0x400000>;
+			size = <0x0 0x800000>;
+			reusable;
 		};
 
 		qseecom_mem: qseecom-region@f6800000 {

-- 
2.54.0


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

* [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node
  2026-04-22 15:39 [PATCH v3 0/4] arm64: dts: qcom: sdm630/660 FastRPC fixes Nickolay Goppen
                   ` (2 preceding siblings ...)
  2026-04-22 15:39 ` [PATCH v3 3/4] arm64: dts: qcom: sdm630: describe adsp_mem region properly Nickolay Goppen
@ 2026-04-22 15:39 ` Nickolay Goppen
  2026-04-23  9:09   ` Ekansh Gupta
  2026-04-23 11:05   ` Konrad Dybcio
  3 siblings, 2 replies; 14+ messages in thread
From: Nickolay Goppen @ 2026-04-22 15:39 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: Nickolay Goppen, Ekansh Gupta, linux-arm-msm, devicetree,
	linux-kernel, ~postmarketos/upstreaming, Konrad Dybcio,
	Dmitry Baryshkov

Downstream [1] ADSP FastRPC node has the adsp_mem region assigned, so
assign it to the ADSP FastRPC node.

[1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1693

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
---
 arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
index 36b419dea153..af2bc29ccdad 100644
--- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
+++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
@@ -2458,6 +2458,9 @@ fastrpc {
 					compatible = "qcom,fastrpc";
 					qcom,glink-channels = "fastrpcglink-apps-dsp";
 					label = "adsp";
+					memory-region = <&adsp_mem>;
+					qcom,vmids = <QCOM_SCM_VMID_LPASS
+						      QCOM_SCM_VMID_ADSP_HEAP>;
 					qcom,non-secure-domain;
 					#address-cells = <1>;
 					#size-cells = <0>;

-- 
2.54.0


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

* Re: [PATCH v3 3/4] arm64: dts: qcom: sdm630: describe adsp_mem region properly
  2026-04-22 15:39 ` [PATCH v3 3/4] arm64: dts: qcom: sdm630: describe adsp_mem region properly Nickolay Goppen
@ 2026-04-22 15:52   ` Dmitry Baryshkov
  2026-04-23  9:09   ` Ekansh Gupta
  1 sibling, 0 replies; 14+ messages in thread
From: Dmitry Baryshkov @ 2026-04-22 15:52 UTC (permalink / raw)
  To: Nickolay Goppen
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Ekansh Gupta, linux-arm-msm, devicetree,
	linux-kernel, ~postmarketos/upstreaming, Konrad Dybcio

On Wed, Apr 22, 2026 at 06:39:22PM +0300, Nickolay Goppen wrote:
> Downstream [1] this region is marked as shared, reusable and dynamic so
> describe it that way.
> 
> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L448
> 
> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
> ---
>  arch/arm64/boot/dts/qcom/sdm630.dtsi | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)

Fixes: b190fb010664 ("arm64: dts: qcom: sdm630: Add sdm630 dts file")
Cc: stable@vger.kernel.org


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



> 
> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
> index 4b47efdb57b2..36b419dea153 100644
> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
> @@ -494,9 +494,12 @@ venus_region: venus@9f800000 {
>  			no-map;
>  		};
>  
> -		adsp_mem: adsp-region@f6000000 {
> -			reg = <0x0 0xf6000000 0x0 0x800000>;
> -			no-map;
> +		adsp_mem: adsp-region {
> +			compatible = "shared-dma-pool";
> +			alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
> +			alignment = <0x0 0x400000>;
> +			size = <0x0 0x800000>;
> +			reusable;
>  		};
>  
>  		qseecom_mem: qseecom-region@f6800000 {
> 
> -- 
> 2.54.0
> 

-- 
With best wishes
Dmitry

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

* Re: [PATCH v3 3/4] arm64: dts: qcom: sdm630: describe adsp_mem region properly
  2026-04-22 15:39 ` [PATCH v3 3/4] arm64: dts: qcom: sdm630: describe adsp_mem region properly Nickolay Goppen
  2026-04-22 15:52   ` Dmitry Baryshkov
@ 2026-04-23  9:09   ` Ekansh Gupta
  1 sibling, 0 replies; 14+ messages in thread
From: Ekansh Gupta @ 2026-04-23  9:09 UTC (permalink / raw)
  To: Nickolay Goppen, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Konrad Dybcio

On 22-04-2026 21:09, Nickolay Goppen wrote:
> Downstream [1] this region is marked as shared, reusable and dynamic so
> describe it that way.
> 
> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L448
> 
> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
> ---
>  arch/arm64/boot/dts/qcom/sdm630.dtsi | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
> 
with fixes tag,

Reviewed-by: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>

> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
> index 4b47efdb57b2..36b419dea153 100644
> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
> @@ -494,9 +494,12 @@ venus_region: venus@9f800000 {
>  			no-map;
>  		};
>  
> -		adsp_mem: adsp-region@f6000000 {
> -			reg = <0x0 0xf6000000 0x0 0x800000>;
> -			no-map;
> +		adsp_mem: adsp-region {
> +			compatible = "shared-dma-pool";
> +			alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
> +			alignment = <0x0 0x400000>;
> +			size = <0x0 0x800000>;
> +			reusable;
>  		};
>  
>  		qseecom_mem: qseecom-region@f6800000 {
> 


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

* Re: [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node
  2026-04-22 15:39 ` [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node Nickolay Goppen
@ 2026-04-23  9:09   ` Ekansh Gupta
  2026-04-23 11:05   ` Konrad Dybcio
  1 sibling, 0 replies; 14+ messages in thread
From: Ekansh Gupta @ 2026-04-23  9:09 UTC (permalink / raw)
  To: Nickolay Goppen, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Konrad Dybcio, Dmitry Baryshkov

On 22-04-2026 21:09, Nickolay Goppen wrote:
> Downstream [1] ADSP FastRPC node has the adsp_mem region assigned, so
> assign it to the ADSP FastRPC node.
> 
> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1693
> 
> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
> ---
>  arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +++
>  1 file changed, 3 insertions(+)
> 
Reviewed-by: Ekansh Gupta <ekansh.gupta@oss.qualcomm.com>
> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
> index 36b419dea153..af2bc29ccdad 100644
> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
> @@ -2458,6 +2458,9 @@ fastrpc {
>  					compatible = "qcom,fastrpc";
>  					qcom,glink-channels = "fastrpcglink-apps-dsp";
>  					label = "adsp";
> +					memory-region = <&adsp_mem>;
> +					qcom,vmids = <QCOM_SCM_VMID_LPASS
> +						      QCOM_SCM_VMID_ADSP_HEAP>;
>  					qcom,non-secure-domain;
>  					#address-cells = <1>;
>  					#size-cells = <0>;
> 


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

* Re: [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node
  2026-04-22 15:39 ` [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node Nickolay Goppen
  2026-04-23  9:09   ` Ekansh Gupta
@ 2026-04-23 11:05   ` Konrad Dybcio
  2026-04-23 13:06     ` Nickolay Goppen
  1 sibling, 1 reply; 14+ messages in thread
From: Konrad Dybcio @ 2026-04-23 11:05 UTC (permalink / raw)
  To: Nickolay Goppen, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: Ekansh Gupta, linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Dmitry Baryshkov

On 4/22/26 5:39 PM, Nickolay Goppen wrote:
> Downstream [1] ADSP FastRPC node has the adsp_mem region assigned, so
> assign it to the ADSP FastRPC node.
> 
> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1693
> 
> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
> ---
>  arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
> index 36b419dea153..af2bc29ccdad 100644
> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
> @@ -2458,6 +2458,9 @@ fastrpc {
>  					compatible = "qcom,fastrpc";
>  					qcom,glink-channels = "fastrpcglink-apps-dsp";
>  					label = "adsp";
> +					memory-region = <&adsp_mem>;
> +					qcom,vmids = <QCOM_SCM_VMID_LPASS
> +						      QCOM_SCM_VMID_ADSP_HEAP>;

Please double-check that, the VMID used to be different on
older SoCs

Konrad

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

* Re: [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node
  2026-04-23 11:05   ` Konrad Dybcio
@ 2026-04-23 13:06     ` Nickolay Goppen
  2026-04-23 13:08       ` Konrad Dybcio
  0 siblings, 1 reply; 14+ messages in thread
From: Nickolay Goppen @ 2026-04-23 13:06 UTC (permalink / raw)
  To: Konrad Dybcio, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: Ekansh Gupta, linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Dmitry Baryshkov


23.04.2026 14:05, Konrad Dybcio пишет:
> On 4/22/26 5:39 PM, Nickolay Goppen wrote:
>> Downstream [1] ADSP FastRPC node has the adsp_mem region assigned, so
>> assign it to the ADSP FastRPC node.
>>
>> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1693
>>
>> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
>> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
>> ---
>>   arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +++
>>   1 file changed, 3 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
>> index 36b419dea153..af2bc29ccdad 100644
>> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
>> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
>> @@ -2458,6 +2458,9 @@ fastrpc {
>>   					compatible = "qcom,fastrpc";
>>   					qcom,glink-channels = "fastrpcglink-apps-dsp";
>>   					label = "adsp";
>> +					memory-region = <&adsp_mem>;
>> +					qcom,vmids = <QCOM_SCM_VMID_LPASS
>> +						      QCOM_SCM_VMID_ADSP_HEAP>;
> Please double-check that, the VMID used to be different on
> older SoCs
Do you know how to check that?
>
> Konrad

-- 
Best regards,
Nickolay


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

* Re: [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node
  2026-04-23 13:06     ` Nickolay Goppen
@ 2026-04-23 13:08       ` Konrad Dybcio
  2026-04-23 13:48         ` Nickolay Goppen
  0 siblings, 1 reply; 14+ messages in thread
From: Konrad Dybcio @ 2026-04-23 13:08 UTC (permalink / raw)
  To: Nickolay Goppen, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: Ekansh Gupta, linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Dmitry Baryshkov

On 4/23/26 3:06 PM, Nickolay Goppen wrote:
> 
> 23.04.2026 14:05, Konrad Dybcio пишет:
>> On 4/22/26 5:39 PM, Nickolay Goppen wrote:
>>> Downstream [1] ADSP FastRPC node has the adsp_mem region assigned, so
>>> assign it to the ADSP FastRPC node.
>>>
>>> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1693
>>>
>>> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
>>> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
>>> ---
>>>   arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +++
>>>   1 file changed, 3 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>> index 36b419dea153..af2bc29ccdad 100644
>>> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>> @@ -2458,6 +2458,9 @@ fastrpc {
>>>                       compatible = "qcom,fastrpc";
>>>                       qcom,glink-channels = "fastrpcglink-apps-dsp";
>>>                       label = "adsp";
>>> +                    memory-region = <&adsp_mem>;
>>> +                    qcom,vmids = <QCOM_SCM_VMID_LPASS
>>> +                              QCOM_SCM_VMID_ADSP_HEAP>;
>> Please double-check that, the VMID used to be different on
>> older SoCs
> Do you know how to check that?

The least painful way is probably to add debug prints to what downstream
calls hyp_assign_phys()

Konrad

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

* Re: [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node
  2026-04-23 13:08       ` Konrad Dybcio
@ 2026-04-23 13:48         ` Nickolay Goppen
  2026-04-23 14:39           ` Ekansh Gupta
  0 siblings, 1 reply; 14+ messages in thread
From: Nickolay Goppen @ 2026-04-23 13:48 UTC (permalink / raw)
  To: Konrad Dybcio, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: Ekansh Gupta, linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Dmitry Baryshkov


23.04.2026 16:08, Konrad Dybcio пишет:
> On 4/23/26 3:06 PM, Nickolay Goppen wrote:
>> 23.04.2026 14:05, Konrad Dybcio пишет:
>>> On 4/22/26 5:39 PM, Nickolay Goppen wrote:
>>>> Downstream [1] ADSP FastRPC node has the adsp_mem region assigned, so
>>>> assign it to the ADSP FastRPC node.
>>>>
>>>> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1693
>>>>
>>>> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
>>>> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
>>>> ---
>>>>    arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +++
>>>>    1 file changed, 3 insertions(+)
>>>>
>>>> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>>> index 36b419dea153..af2bc29ccdad 100644
>>>> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>>> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>>> @@ -2458,6 +2458,9 @@ fastrpc {
>>>>                        compatible = "qcom,fastrpc";
>>>>                        qcom,glink-channels = "fastrpcglink-apps-dsp";
>>>>                        label = "adsp";
>>>> +                    memory-region = <&adsp_mem>;
>>>> +                    qcom,vmids = <QCOM_SCM_VMID_LPASS
>>>> +                              QCOM_SCM_VMID_ADSP_HEAP>;
>>> Please double-check that, the VMID used to be different on
>>> older SoCs
>> Do you know how to check that?
> The least painful way is probably to add debug prints to what downstream
> calls hyp_assign_phys()

I've found in drivers/soc/qcom/qdsp6v2/msm_audio_ion.c the following vmids:

VMID_HLOS= 0x3
VMID_CP_ADSP_SHARED33

>
> Konrad

-- 
Best regards,
Nickolay


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

* Re: [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node
  2026-04-23 13:48         ` Nickolay Goppen
@ 2026-04-23 14:39           ` Ekansh Gupta
  2026-04-23 15:00             ` Nickolay Goppen
  0 siblings, 1 reply; 14+ messages in thread
From: Ekansh Gupta @ 2026-04-23 14:39 UTC (permalink / raw)
  To: Nickolay Goppen, Konrad Dybcio, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Dmitry Baryshkov

On 23-04-2026 19:18, Nickolay Goppen wrote:
> 
> 23.04.2026 16:08, Konrad Dybcio пишет:
>> On 4/23/26 3:06 PM, Nickolay Goppen wrote:
>>> 23.04.2026 14:05, Konrad Dybcio пишет:
>>>> On 4/22/26 5:39 PM, Nickolay Goppen wrote:
>>>>> Downstream [1] ADSP FastRPC node has the adsp_mem region assigned, so
>>>>> assign it to the ADSP FastRPC node.
>>>>>
>>>>> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/
>>>>> blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1693
>>>>>
>>>>> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
>>>>> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
>>>>> ---
>>>>>    arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +++
>>>>>    1 file changed, 3 insertions(+)
>>>>>
>>>>> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/
>>>>> boot/dts/qcom/sdm630.dtsi
>>>>> index 36b419dea153..af2bc29ccdad 100644
>>>>> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>>>> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>>>> @@ -2458,6 +2458,9 @@ fastrpc {
>>>>>                        compatible = "qcom,fastrpc";
>>>>>                        qcom,glink-channels = "fastrpcglink-apps-dsp";
>>>>>                        label = "adsp";
>>>>> +                    memory-region = <&adsp_mem>;
>>>>> +                    qcom,vmids = <QCOM_SCM_VMID_LPASS
>>>>> +                              QCOM_SCM_VMID_ADSP_HEAP>;
>>>> Please double-check that, the VMID used to be different on
>>>> older SoCs
>>> Do you know how to check that?
>> The least painful way is probably to add debug prints to what downstream
>> calls hyp_assign_phys()
> 
> I've found in drivers/soc/qcom/qdsp6v2/msm_audio_ion.c the following vmids:
> 
> VMID_HLOS= 0x3
> VMID_CP_ADSP_SHARED33

This VMID looks correct.

Just had a look at the downstream fastrpc driver code in the same tree.
The fastrpc node in DT[1] is adding a "qcom,fastrpc-vmid-heap-shared"
property. For this property, the VMID is getting set as
"VMID_CP_ADSP_SHARED" in the downstream fastrpc driver[2]. The
hyp_assign is happening during daemon attach call[3] with srcVM being
"VMID_HLOS".

Thanks Konrad for highlighting this difference in VMID.

[1]
https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1699
[2]
https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/drivers/char/adsprpc.c#L3602
[3]
https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/drivers/char/adsprpc.c#L1999
> 
>>
>> Konrad
> 


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

* Re: [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node
  2026-04-23 14:39           ` Ekansh Gupta
@ 2026-04-23 15:00             ` Nickolay Goppen
  0 siblings, 0 replies; 14+ messages in thread
From: Nickolay Goppen @ 2026-04-23 15:00 UTC (permalink / raw)
  To: Ekansh Gupta, Konrad Dybcio, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel,
	~postmarketos/upstreaming, Dmitry Baryshkov


23.04.2026 17:39, Ekansh Gupta пишет:
> On 23-04-2026 19:18, Nickolay Goppen wrote:
>> 23.04.2026 16:08, Konrad Dybcio пишет:
>>> On 4/23/26 3:06 PM, Nickolay Goppen wrote:
>>>> 23.04.2026 14:05, Konrad Dybcio пишет:
>>>>> On 4/22/26 5:39 PM, Nickolay Goppen wrote:
>>>>>> Downstream [1] ADSP FastRPC node has the adsp_mem region assigned, so
>>>>>> assign it to the ADSP FastRPC node.
>>>>>>
>>>>>> [1]: https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/
>>>>>> blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1693
>>>>>>
>>>>>> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
>>>>>> Signed-off-by: Nickolay Goppen <setotau@mainlining.org>
>>>>>> ---
>>>>>>     arch/arm64/boot/dts/qcom/sdm630.dtsi | 3 +++
>>>>>>     1 file changed, 3 insertions(+)
>>>>>>
>>>>>> diff --git a/arch/arm64/boot/dts/qcom/sdm630.dtsi b/arch/arm64/
>>>>>> boot/dts/qcom/sdm630.dtsi
>>>>>> index 36b419dea153..af2bc29ccdad 100644
>>>>>> --- a/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>>>>> +++ b/arch/arm64/boot/dts/qcom/sdm630.dtsi
>>>>>> @@ -2458,6 +2458,9 @@ fastrpc {
>>>>>>                         compatible = "qcom,fastrpc";
>>>>>>                         qcom,glink-channels = "fastrpcglink-apps-dsp";
>>>>>>                         label = "adsp";
>>>>>> +                    memory-region = <&adsp_mem>;
>>>>>> +                    qcom,vmids = <QCOM_SCM_VMID_LPASS
>>>>>> +                              QCOM_SCM_VMID_ADSP_HEAP>;
>>>>> Please double-check that, the VMID used to be different on
>>>>> older SoCs
>>>> Do you know how to check that?
>>> The least painful way is probably to add debug prints to what downstream
>>> calls hyp_assign_phys()
>> I've found in drivers/soc/qcom/qdsp6v2/msm_audio_ion.c the following vmids:
>>
>> VMID_HLOS= 0x3
>> VMID_CP_ADSP_SHARED33
> This VMID looks correct.
>
> Just had a look at the downstream fastrpc driver code in the same tree.
> The fastrpc node in DT[1] is adding a "qcom,fastrpc-vmid-heap-shared"
> property. For this property, the VMID is getting set as
> "VMID_CP_ADSP_SHARED" in the downstream fastrpc driver[2]. The
> hyp_assign is happening during daemon attach call[3] with srcVM being
> "VMID_HLOS".
>
> Thanks Konrad for highlighting this difference in VMID.
>
> [1]
> https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/arch/arm/boot/dts/qcom/sdm660.dtsi#L1699
> [2]
> https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/drivers/char/adsprpc.c#L3602
> [3]
> https://github.com/xiaomi-sdm660/android_kernel_xiaomi_sdm660/blob/11-EAS/drivers/char/adsprpc.c#L1999
Didn't find the "VMID_CP_ADSP_SHARED 0x33" in the upstream bindings. 
Does it need to be added to the bindings?
>>> Konrad

-- 
Best regards,
Nickolay


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

end of thread, other threads:[~2026-04-23 15:00 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-22 15:39 [PATCH v3 0/4] arm64: dts: qcom: sdm630/660 FastRPC fixes Nickolay Goppen
2026-04-22 15:39 ` [PATCH v3 1/4] arm64: dts: qcom: sdm660: set cdsp compute-cbs' regs properly Nickolay Goppen
2026-04-22 15:39 ` [PATCH v3 2/4] arm64: dts: qcom: sdm630: set adsp " Nickolay Goppen
2026-04-22 15:39 ` [PATCH v3 3/4] arm64: dts: qcom: sdm630: describe adsp_mem region properly Nickolay Goppen
2026-04-22 15:52   ` Dmitry Baryshkov
2026-04-23  9:09   ` Ekansh Gupta
2026-04-22 15:39 ` [PATCH v3 4/4] arm64: dts: qcom: sdm630: assign adsp_mem region to ADSP FastRPC node Nickolay Goppen
2026-04-23  9:09   ` Ekansh Gupta
2026-04-23 11:05   ` Konrad Dybcio
2026-04-23 13:06     ` Nickolay Goppen
2026-04-23 13:08       ` Konrad Dybcio
2026-04-23 13:48         ` Nickolay Goppen
2026-04-23 14:39           ` Ekansh Gupta
2026-04-23 15:00             ` Nickolay Goppen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox