diff options
| -rw-r--r-- | drivers/gpu/drm/tegra/drm.c | 4 | ||||
| -rw-r--r-- | drivers/gpu/host1x/dev.c | 4 | 
2 files changed, 8 insertions, 0 deletions
| diff --git a/drivers/gpu/drm/tegra/drm.c b/drivers/gpu/drm/tegra/drm.c index 6748ec1e0005..a1f909dac89a 100644 --- a/drivers/gpu/drm/tegra/drm.c +++ b/drivers/gpu/drm/tegra/drm.c @@ -1093,6 +1093,10 @@ static bool host1x_drm_wants_iommu(struct host1x_device *dev)  	struct host1x *host1x = dev_get_drvdata(dev->dev.parent);  	struct iommu_domain *domain; +	/* Our IOMMU usage policy doesn't currently play well with GART */ +	if (of_machine_is_compatible("nvidia,tegra20")) +		return false; +  	/*  	 * If the Tegra DRM clients are backed by an IOMMU, push buffers are  	 * likely to be allocated beyond the 32-bit boundary if sufficient diff --git a/drivers/gpu/host1x/dev.c b/drivers/gpu/host1x/dev.c index 0cd3f97e7e49..f60ea24db0ec 100644 --- a/drivers/gpu/host1x/dev.c +++ b/drivers/gpu/host1x/dev.c @@ -292,6 +292,10 @@ static void host1x_setup_virtualization_tables(struct host1x *host)  static bool host1x_wants_iommu(struct host1x *host1x)  { +	/* Our IOMMU usage policy doesn't currently play well with GART */ +	if (of_machine_is_compatible("nvidia,tegra20")) +		return false; +  	/*  	 * If we support addressing a maximum of 32 bits of physical memory  	 * and if the host1x firewall is enabled, there's no need to enable | 
