* [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