drm/tegra: Do not assume that a NULL domain means no DMA IOMMU
authorJason Gunthorpe <jgg@nvidia.com>
Tue, 30 Jan 2024 16:14:54 +0000 (12:14 -0400)
committerJoerg Roedel <jroedel@suse.de>
Thu, 1 Feb 2024 12:17:21 +0000 (13:17 +0100)
commitfae6e669cdc52fdbb843e7fb1b8419642b6b8cba
tree51f860dc80f3008be363aa2c2f66fbcfe70bc095
parent83b3836bf83f09beea5f592b126cfdd1bc921e48
drm/tegra: Do not assume that a NULL domain means no DMA IOMMU

Previously with tegra-smmu, even with CONFIG_IOMMU_DMA, the default domain
could have been left as NULL. The NULL domain is specially recognized by
host1x_client_iommu_attach() as meaning it is not the DMA domain and
should be replaced with the special shared domain.

This happened prior to the below commit because tegra-smmu was using the
NULL domain to mean IDENTITY.

Now that the domain is properly labled the test in DRM doesn't see NULL.
Check for IDENTITY as well to enable the special domains.

Fixes: c8cc2655cc6c ("iommu/tegra-smmu: Implement an IDENTITY domain")
Reported-by: diogo.ivo@tecnico.ulisboa.pt
Closes: https://lore.kernel.org/all/bbmhcoghrprmbdibnjum6lefix2eoquxrde7wyqeulm4xabmlm@b6jy32saugqh/
Tested-by: diogo.ivo@tecnico.ulisboa.pt
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/0-v1-3049f92c4812+16691-host1x_def_dom_fix_jgg@nvidia.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/gpu/drm/tegra/drm.c