Thread (10 messages) 10 messages, 3 authors, 2017-08-01

[PATCH] ARM: tegra: Register host1x node with iommu binding on tegra124

From: Paul Kocialkowski <hidden>
Date: 2017-08-01 09:57:17
Also in: linux-tegra, lkml

On Mon, 2017-07-31 at 17:23 +0200, Thierry Reding wrote:
On Tue, Jul 11, 2017 at 03:17:46PM +0000, Marcel Ziswiler wrote:
quoted
On Tue, 2017-07-11 at 18:05 +0300, Paul Kocialkowski wrote:
quoted
On Tue, 2017-07-11 at 14:54 +0000, Marcel Ziswiler wrote:
quoted
On Tue, 2017-07-11 at 11:50 +0300, Paul Kocialkowski wrote:
quoted
On Sun, 2017-07-09 at 19:36 +0300, Paul Kocialkowski wrote:
quoted
This registers the host1x node with the SMMU (as HC swgroup)
to
allow
the host1x code to attach to it. It avoid failing the probe
sequence,
which resulted in the tegra drm driver not probing and thus
nothing
being displayed on-screen.
Fixes: 404bfb78daf3 ("gpu: host1x: Add IOMMU support")
quoted
Signed-off-by: Paul Kocialkowski <contact-
W9ppeneeCTY at public.gmane.org>
Tested-by: Marcel Ziswiler <redacted>
Tested-on: Apalis TK1, Jetson-TK1
quoted
quoted
---
 arch/arm/boot/dts/tegra124.dtsi | 1 +
 1 file changed, 1 insertion(+)
diff --git a/arch/arm/boot/dts/tegra124.dtsi
b/arch/arm/boot/dts/tegra124.dtsi
index 187a36c6d0fc..b3b89befffeb 100644
--- a/arch/arm/boot/dts/tegra124.dtsi
+++ b/arch/arm/boot/dts/tegra124.dtsi
@@ -85,6 +85,7 @@
 		clocks = <&tegra_car TEGRA124_CLK_HOST1X>;
 		resets = <&tegra_car 28>;
 		reset-names = "host1x";
+		iommus = <&mc TEGRA_SWGROUP_HC>;
 
 		#address-cells = <2>;
 		#size-cells = <2>;
So I take it we still will need this one moving forward,
correct?
Yes, this one actually enables the IOMMU while the other one
handles
the
failure to attach the IOMMU without brinding the whole drm driver
down.

So it's best to actually make use of the feature!
quoted
How about tegra30, I guess the same applies there, isn't it?
Should
I
send a patch or are you guys doing that?
I don't have any tegra hardware aside of tegra124, so that's all I
can
contribute to. I don't know if others have looked into the same
type
of
issue happening on either newer or older platforms.
OK, as we happen to still selling Apalis/Colibri T30 and me having
Beaver as well as Cardhu available for testing I can cook something
up,
test and send it along. First tries indicate it working on 4.12 but
somehow crashing during memory allocation on -next. We'll see.
I think we're going to need the same change on Tegra30 and Tegra114.
And
Tegra132 and Tegra210 for that matter. With the gpu/host1x fix applied
things should keep working on all generations, but we need DT changes
if
we want to make use of the SMMU.
I don't have any other hardware than tegra124, so I don't really feel
confident sending out those patches knowing that I won't be able to test
them.

I could still craft them, but we'd have to make sure that someone can
test them before they are applied.

-- 
Paul Kocialkowski,

developer of free digital technology and hardware support

Website: https://www.paulk.fr/
Coding blog: https://code.paulk.fr/
Git repositories: https://git.paulk.fr/ https://git.code.paulk.fr/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help