mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0
@ 2025-04-08  9:23 Chen-Yu Tsai
  2025-04-08 10:09 ` AngeloGioacchino Del Regno
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Chen-Yu Tsai @ 2025-04-08  9:23 UTC (permalink / raw)
  To: Matthias Brugger, AngeloGioacchino Del Regno
  Cc: Chen-Yu Tsai, devicetree, linux-mediatek, linux-arm-kernel,
	linux-kernel, Chengci . Xu, Yong Wu, Robin Murphy

Based on the comments in the MT8188 IOMMU binding header, the rdma0
device specifies the wrong IOMMU device for the IOMMU port it is
tied to:

    This SoC have two MM IOMMU HWs, this is the connected information:
    iommu-vdo: larb0/2/5/9/10/11A/11C/13/16B/17B/19/21
    iommu-vpp: larb1/3/4/6/7/11B/12/14/15/16A/17A/23/27

rdma0's endpoint is M4U_PORT_L1_DISP_RDMA0 (on larb1), which should use
iommu-vpp, but it is currently tied to iommu-vdo.

Somehow this went undetected until recently in Linux v6.15-rc1 with some
IOMMU subsystem framework changes that caused the IOMMU to no longer
work. The IOMMU would fail to probe if any devices associated with it
could not be successfully attached. Prior to these changes, only the
end device would be left without an IOMMU attached.

Fixes: 7075b21d1a8e ("arm64: dts: mediatek: mt8188: Add display nodes for vdosys0")
Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
---
 arch/arm64/boot/dts/mediatek/mt8188.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/mediatek/mt8188.dtsi b/arch/arm64/boot/dts/mediatek/mt8188.dtsi
index 69a8423d3858..29d35ca94597 100644
--- a/arch/arm64/boot/dts/mediatek/mt8188.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8188.dtsi
@@ -2579,7 +2579,7 @@ rdma0: rdma@1c002000 {
 			reg = <0 0x1c002000 0 0x1000>;
 			clocks = <&vdosys0 CLK_VDO0_DISP_RDMA0>;
 			interrupts = <GIC_SPI 638 IRQ_TYPE_LEVEL_HIGH 0>;
-			iommus = <&vdo_iommu M4U_PORT_L1_DISP_RDMA0>;
+			iommus = <&vpp_iommu M4U_PORT_L1_DISP_RDMA0>;
 			power-domains = <&spm MT8188_POWER_DOMAIN_VDOSYS0>;
 			mediatek,gce-client-reg = <&gce0 SUBSYS_1c00XXXX 0x2000 0x1000>;
 
-- 
2.49.0.504.g3bcea36a83-goog


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

* Re: [PATCH] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0
  2025-04-08  9:23 [PATCH] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0 Chen-Yu Tsai
@ 2025-04-08 10:09 ` AngeloGioacchino Del Regno
  2025-04-10  9:50 ` Jason-JH Lin (林睿祥)
  2025-04-14  9:53 ` AngeloGioacchino Del Regno
  2 siblings, 0 replies; 4+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-08 10:09 UTC (permalink / raw)
  To: Chen-Yu Tsai, Matthias Brugger
  Cc: devicetree, linux-mediatek, linux-arm-kernel, linux-kernel,
	Chengci . Xu, Yong Wu, Robin Murphy

Il 08/04/25 11:23, Chen-Yu Tsai ha scritto:
> Based on the comments in the MT8188 IOMMU binding header, the rdma0
> device specifies the wrong IOMMU device for the IOMMU port it is
> tied to:
> 
>      This SoC have two MM IOMMU HWs, this is the connected information:
>      iommu-vdo: larb0/2/5/9/10/11A/11C/13/16B/17B/19/21
>      iommu-vpp: larb1/3/4/6/7/11B/12/14/15/16A/17A/23/27
> 
> rdma0's endpoint is M4U_PORT_L1_DISP_RDMA0 (on larb1), which should use
> iommu-vpp, but it is currently tied to iommu-vdo.
> 
> Somehow this went undetected until recently in Linux v6.15-rc1 with some
> IOMMU subsystem framework changes that caused the IOMMU to no longer
> work. The IOMMU would fail to probe if any devices associated with it
> could not be successfully attached. Prior to these changes, only the
> end device would be left without an IOMMU attached.
> 
> Fixes: 7075b21d1a8e ("arm64: dts: mediatek: mt8188: Add display nodes for vdosys0")
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>




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

* Re: [PATCH] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0
  2025-04-08  9:23 [PATCH] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0 Chen-Yu Tsai
  2025-04-08 10:09 ` AngeloGioacchino Del Regno
@ 2025-04-10  9:50 ` Jason-JH Lin (林睿祥)
  2025-04-14  9:53 ` AngeloGioacchino Del Regno
  2 siblings, 0 replies; 4+ messages in thread
From: Jason-JH Lin (林睿祥) @ 2025-04-10  9:50 UTC (permalink / raw)
  To: AngeloGioacchino Del Regno, wenst, matthias.bgg
  Cc: linux-arm-kernel, linux-mediatek, Yong Wu (吴勇),
	devicetree, linux-kernel, Chengci Xu (许承赐),
	robin.murphy

Hi Chen-Yu,

On Tue, 2025-04-08 at 17:23 +0800, Chen-Yu Tsai wrote:
> 
> External email : Please do not click links or open attachments until
> you have verified the sender or the content.
> 
> 
> Based on the comments in the MT8188 IOMMU binding header, the rdma0
> device specifies the wrong IOMMU device for the IOMMU port it is
> tied to:
> 
>     This SoC have two MM IOMMU HWs, this is the connected
> information:
>     iommu-vdo: larb0/2/5/9/10/11A/11C/13/16B/17B/19/21
>     iommu-vpp: larb1/3/4/6/7/11B/12/14/15/16A/17A/23/27
> 
> rdma0's endpoint is M4U_PORT_L1_DISP_RDMA0 (on larb1), which should
> use
> iommu-vpp, but it is currently tied to iommu-vdo.
> 
> Somehow this went undetected until recently in Linux v6.15-rc1 with
> some
> IOMMU subsystem framework changes that caused the IOMMU to no longer
> work. The IOMMU would fail to probe if any devices associated with it
> could not be successfully attached. Prior to these changes, only the
> end device would be left without an IOMMU attached.
> 
> Fixes: 7075b21d1a8e ("arm64: dts: mediatek: mt8188: Add display nodes
> for vdosys0")
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>

Thanks for your fix patch.

Reviewed-by: Jason-JH Lin <jason-jh.lin@mediatek.com>

Regards,
Jason-JH Lin


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

* Re: [PATCH] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0
  2025-04-08  9:23 [PATCH] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0 Chen-Yu Tsai
  2025-04-08 10:09 ` AngeloGioacchino Del Regno
  2025-04-10  9:50 ` Jason-JH Lin (林睿祥)
@ 2025-04-14  9:53 ` AngeloGioacchino Del Regno
  2 siblings, 0 replies; 4+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-14  9:53 UTC (permalink / raw)
  To: Matthias Brugger, Chen-Yu Tsai
  Cc: devicetree, linux-mediatek, linux-arm-kernel, linux-kernel,
	Chengci . Xu, Yong Wu, Robin Murphy

On Tue, 08 Apr 2025 17:23:02 +0800, Chen-Yu Tsai wrote:
> Based on the comments in the MT8188 IOMMU binding header, the rdma0
> device specifies the wrong IOMMU device for the IOMMU port it is
> tied to:
> 
>     This SoC have two MM IOMMU HWs, this is the connected information:
>     iommu-vdo: larb0/2/5/9/10/11A/11C/13/16B/17B/19/21
>     iommu-vpp: larb1/3/4/6/7/11B/12/14/15/16A/17A/23/27
> 
> [...]

Applied to v6.15-next/dts64, thanks!

[1/1] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0
      commit: 267623000d11f6d483214be2484555f600393a12

Cheers,
Angelo



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

end of thread, other threads:[~2025-04-14  9:53 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-04-08  9:23 [PATCH] arm64: dts: mediatek: mt8188: Fix IOMMU device for rdma0 Chen-Yu Tsai
2025-04-08 10:09 ` AngeloGioacchino Del Regno
2025-04-10  9:50 ` Jason-JH Lin (林睿祥)
2025-04-14  9:53 ` AngeloGioacchino Del Regno

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

all inboxes | Powered by JetHome®