iommu/arm-smmu: Force identity domains for legacy binding
authorRobin Murphy <robin.murphy@arm.com>
Tue, 10 May 2022 08:38:58 +0000 (09:38 +0100)
committerWill Deacon <will@kernel.org>
Tue, 10 May 2022 11:01:31 +0000 (12:01 +0100)
commit628bf55b620497a105f4963ee8fb84769f7e6bb4
treebe44a25ea9e0c3c9bb96b463a308a1de1562450d
parent5ca216155b5ead6e2d64738644afed9ac17f1fe3
iommu/arm-smmu: Force identity domains for legacy binding

When using the legacy "mmu-masters" DT binding, we reject DMA domains
since we have no guarantee of driver probe order and thus can't rely on
client drivers getting the correct DMA ops. However, we can do better
than fall back to the old no-default-domain behaviour now, by forcing an
identity default domain instead. This also means that detaching from a
VFIO domain can actually work - that looks to have been broken for over
6 years, so clearly isn't something that legacy binding users care
about, but we may as well make the driver code make sense anyway.

Suggested-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/9805e4c492cb972bdcdd57999d2d001a2d8b5aab.1652171938.git.robin.murphy@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/arm/arm-smmu/arm-smmu.c