| From ea90f66f2a8629dde07328df0b8314aae5e54a47 Mon Sep 17 00:00:00 2001 |
| From: Thierry Reding <treding@nvidia.com> |
| Date: Tue, 1 Sep 2020 17:32:48 +0200 |
| Subject: memory: tegra: Remove GPU from DRM IOMMU group |
| |
| From: Thierry Reding <treding@nvidia.com> |
| |
| commit ea90f66f2a8629dde07328df0b8314aae5e54a47 upstream. |
| |
| Commit 63a613fdb16c ("memory: tegra: Add gr2d and gr3d to DRM IOMMU |
| group") added the GPU to the DRM IOMMU group, which doesn't make any |
| sense. This causes problems when Nouveau tries to attach to the SMMU |
| and causes it to fall back to using the DMA API. |
| |
| Remove the GPU from the DRM groups to restore the old behaviour. The |
| GPU should always have its own IOMMU domain to make sure it can map |
| buffers into contiguous chunks (for big page support) without getting |
| in the way of mappings from the DRM group. |
| |
| Cc: <stable@vger.kernel.org> |
| Fixes: 63a613fdb16c ("memory: tegra: Add gr2d and gr3d to DRM IOMMU group") |
| Reported-by: Matias Zuniga <matias.nicolas.zc@gmail.com> |
| Signed-off-by: Thierry Reding <treding@nvidia.com> |
| Reviewed-by: Dmitry Osipenko <digetx@gmail.com> |
| Link: https://lore.kernel.org/r/20200901153248.1831263-1-thierry.reding@gmail.com |
| Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/memory/tegra/tegra124.c | 1 - |
| 1 file changed, 1 deletion(-) |
| |
| --- a/drivers/memory/tegra/tegra124.c |
| +++ b/drivers/memory/tegra/tegra124.c |
| @@ -957,7 +957,6 @@ static const struct tegra_smmu_swgroup t |
| static const unsigned int tegra124_group_drm[] = { |
| TEGRA_SWGROUP_DC, |
| TEGRA_SWGROUP_DCB, |
| - TEGRA_SWGROUP_GPU, |
| TEGRA_SWGROUP_VIC, |
| }; |
| |