public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] arm64: dts: qcom: agatti: Fix IOMMU DT properties
@ 2025-12-29  7:12 Sumit Garg
  2025-12-29  7:12 ` [PATCH 2/2] arm64: dts: qcom: agatti: Address Gunyah memory alignment needs Sumit Garg
                   ` (4 more replies)
  0 siblings, 5 replies; 24+ messages in thread
From: Sumit Garg @ 2025-12-29  7:12 UTC (permalink / raw)
  To: linux-arm-msm, devicetree
  Cc: andersson, konradybcio, robh, krzk+dt, conor+dt, akhilpo,
	vikash.garodia, dikshita.agarwal, robin.clark, lumag,
	linux-kernel, Sumit Garg, Prakash Gupta

From: Sumit Garg <sumit.garg@oss.qualcomm.com>

Fix IOMMU DT propeties for GPU, display and video peripherals via
dropping SMMU stream IDs which relates to secure context bank.

This problem only surfaced when the Gunyah based firmware stack is
ported on Agatti replacing the legacy QHEE based firmware stack. Assigning
Linux kernel (HLOS) VMID to secure context bank stream IDs is treated
as a fault by Gunyah hypervisor which were previously ignored by QHEE
hypervisor.

The DT changes should be backwards compatible with legacy QHEE based
firmware stack too.

Suggested-by: Prakash Gupta <guptap@qti.qualcomm.com>
Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/agatti.dtsi | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/agatti.dtsi b/arch/arm64/boot/dts/qcom/agatti.dtsi
index 8bf5c5583fc2..e705eb24160a 100644
--- a/arch/arm64/boot/dts/qcom/agatti.dtsi
+++ b/arch/arm64/boot/dts/qcom/agatti.dtsi
@@ -1613,8 +1613,7 @@ gpu: gpu@5900000 {
 					 &bimc SLAVE_EBI1 RPM_ALWAYS_TAG>;
 			interconnect-names = "gfx-mem";
 
-			iommus = <&adreno_smmu 0 1>,
-				 <&adreno_smmu 2 0>;
+			iommus = <&adreno_smmu 0 1>;
 			operating-points-v2 = <&gpu_opp_table>;
 			power-domains = <&rpmpd QCM2290_VDDCX>;
 			qcom,gmu = <&gmu_wrapper>;
@@ -1895,8 +1894,7 @@ mdss: display-subsystem@5e00000 {
 
 			power-domains = <&dispcc MDSS_GDSC>;
 
-			iommus = <&apps_smmu 0x420 0x2>,
-				 <&apps_smmu 0x421 0x0>;
+			iommus = <&apps_smmu 0x420 0x2>;
 			interconnects = <&mmrt_virt MASTER_MDP0 RPM_ALWAYS_TAG
 					 &bimc SLAVE_EBI1 RPM_ALWAYS_TAG>,
 					<&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG
@@ -2339,10 +2337,7 @@ venus: video-codec@5a00000 {
 
 			memory-region = <&pil_video_mem>;
 			iommus = <&apps_smmu 0x860 0x0>,
-				 <&apps_smmu 0x880 0x0>,
-				 <&apps_smmu 0x861 0x04>,
-				 <&apps_smmu 0x863 0x0>,
-				 <&apps_smmu 0x804 0xe0>;
+				 <&apps_smmu 0x880 0x0>;
 
 			interconnects = <&mmnrt_virt MASTER_VIDEO_P0 RPM_ALWAYS_TAG
 					 &bimc SLAVE_EBI1 RPM_ALWAYS_TAG>,
-- 
2.51.0


^ permalink raw reply related	[flat|nested] 24+ messages in thread
* [PATCH 1/2] arm64: dts: qcom: agatti: Fix IOMMU DT properties
@ 2025-12-29  7:07 Sumit Garg
  2025-12-29  7:07 ` [PATCH 2/2] arm64: dts: qcom: agatti: Address Gunyah memory alignment needs Sumit Garg
  0 siblings, 1 reply; 24+ messages in thread
From: Sumit Garg @ 2025-12-29  7:07 UTC (permalink / raw)
  To: linux-arm-msm, devicetree
  Cc: andersson, konradybcio, robh, krzk+dt, conor+dt, akhilpo,
	vikash.garodia, dikshita.agarwal, robin.clark, lumag,
	linux-kernel, Sumit Garg, Prakash Gupta

Fix IOMMU DT propeties for GPU, display and video peripherals via
dropping SMMU stream IDs which relates to secure context bank.

This problem only surfaced when the Gunyah based firmware stack is
ported on Agatti replacing the legacy QHEE based firmware stack. Assigning
Linux kernel (HLOS) VMID to secure context bank stream IDs is treated
as a fault by Gunyah hypervisor which were previously ignored by QHEE
hypervisor.

The DT changes should be backwards compatible with legacy QHEE based
firmware stack too.

Suggested-by: Prakash Gupta <guptap@qti.qualcomm.com>
Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/agatti.dtsi | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/agatti.dtsi b/arch/arm64/boot/dts/qcom/agatti.dtsi
index 8bf5c5583fc2..e705eb24160a 100644
--- a/arch/arm64/boot/dts/qcom/agatti.dtsi
+++ b/arch/arm64/boot/dts/qcom/agatti.dtsi
@@ -1613,8 +1613,7 @@ gpu: gpu@5900000 {
 					 &bimc SLAVE_EBI1 RPM_ALWAYS_TAG>;
 			interconnect-names = "gfx-mem";
 
-			iommus = <&adreno_smmu 0 1>,
-				 <&adreno_smmu 2 0>;
+			iommus = <&adreno_smmu 0 1>;
 			operating-points-v2 = <&gpu_opp_table>;
 			power-domains = <&rpmpd QCM2290_VDDCX>;
 			qcom,gmu = <&gmu_wrapper>;
@@ -1895,8 +1894,7 @@ mdss: display-subsystem@5e00000 {
 
 			power-domains = <&dispcc MDSS_GDSC>;
 
-			iommus = <&apps_smmu 0x420 0x2>,
-				 <&apps_smmu 0x421 0x0>;
+			iommus = <&apps_smmu 0x420 0x2>;
 			interconnects = <&mmrt_virt MASTER_MDP0 RPM_ALWAYS_TAG
 					 &bimc SLAVE_EBI1 RPM_ALWAYS_TAG>,
 					<&bimc MASTER_APPSS_PROC RPM_ALWAYS_TAG
@@ -2339,10 +2337,7 @@ venus: video-codec@5a00000 {
 
 			memory-region = <&pil_video_mem>;
 			iommus = <&apps_smmu 0x860 0x0>,
-				 <&apps_smmu 0x880 0x0>,
-				 <&apps_smmu 0x861 0x04>,
-				 <&apps_smmu 0x863 0x0>,
-				 <&apps_smmu 0x804 0xe0>;
+				 <&apps_smmu 0x880 0x0>;
 
 			interconnects = <&mmnrt_virt MASTER_VIDEO_P0 RPM_ALWAYS_TAG
 					 &bimc SLAVE_EBI1 RPM_ALWAYS_TAG>,
-- 
2.51.0


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

end of thread, other threads:[~2026-01-09 10:07 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-29  7:12 [PATCH 1/2] arm64: dts: qcom: agatti: Fix IOMMU DT properties Sumit Garg
2025-12-29  7:12 ` [PATCH 2/2] arm64: dts: qcom: agatti: Address Gunyah memory alignment needs Sumit Garg
2025-12-29 12:42   ` Konrad Dybcio
2025-12-29 12:43   ` Konrad Dybcio
2025-12-30  4:46     ` Sumit Garg
2025-12-30 13:07       ` Konrad Dybcio
2026-01-03 15:49   ` Bjorn Andersson
2026-01-05  5:46     ` Sumit Garg
2026-01-07 11:29       ` Konrad Dybcio
2026-01-08 10:50         ` Sumit Garg
2026-01-08 12:43           ` Konrad Dybcio
2026-01-09 10:07             ` Sumit Garg
2025-12-29 12:41 ` [PATCH 1/2] arm64: dts: qcom: agatti: Fix IOMMU DT properties Konrad Dybcio
2025-12-29 20:00 ` Dmitry Baryshkov
2025-12-30  5:15   ` Sumit Garg
2025-12-30  7:05     ` Dmitry Baryshkov
2025-12-30  7:54       ` Sumit Garg
2026-01-03 15:43         ` Bjorn Andersson
2026-01-05  6:27           ` Sumit Garg
2025-12-30 12:46       ` Akhil P Oommen
2025-12-30 14:40         ` Dmitry Baryshkov
2025-12-29 20:39 ` Rob Herring
2025-12-29 21:27 ` Akhil P Oommen
  -- strict thread matches above, loose matches on Subject: below --
2025-12-29  7:07 Sumit Garg
2025-12-29  7:07 ` [PATCH 2/2] arm64: dts: qcom: agatti: Address Gunyah memory alignment needs Sumit Garg

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