On 2023/7/25 1:22, Jason Gunthorpe wrote:
This callback requests the driver to create only a __IOMMU_DOMAIN_PAGING
domain, so it saves a few lines in a lot of drivers needlessly checking
the type.

More critically, this allows us to sweep out all the
IOMMU_DOMAIN_UNMANAGED and IOMMU_DOMAIN_DMA checks from a lot of the
drivers, simplifying what is going on in the code and ultimately removing
the now-unused special cases in drivers where they did not support
IOMMU_DOMAIN_DMA.

domain_alloc_paging() should return a struct iommu_domain that is
functionally compatible with ARM_DMA_USE_IOMMU, dma-iommu.c and iommufd.

Be forwards looking and pass in a 'struct device *' argument. We can
provide this when allocating the default_domain. No drivers will look at
this.

Tested-by: Steven Price<steven.pr...@arm.com>
Tested-by: Marek Szyprowski<m.szyprow...@samsung.com>
Tested-by: Nicolin Chen<nicol...@nvidia.com>
Signed-off-by: Jason Gunthorpe<j...@nvidia.com>
---
  drivers/iommu/iommu.c | 13 ++++++++++---
  include/linux/iommu.h |  3 +++
  2 files changed, 13 insertions(+), 3 deletions(-)

Reviewed-by: Lu Baolu <baolu...@linux.intel.com>

Reply via email to