[PATCH v5 3/3] arm64: Hook up IOMMU dma_ops
Joerg Roedel
joro at 8bytes.org
Fri Aug 7 01:55:17 PDT 2015
On Fri, Jul 31, 2015 at 06:18:29PM +0100, Robin Murphy wrote:
> +void arch_teardown_dma_ops(struct device *dev)
> +{
> + struct iommu_domain *domain = iommu_get_domain_for_dev(dev);
> +
> + if (domain) {
> + iommu_detach_device(domain, dev);
> + if (domain->type & __IOMMU_DOMAIN_ARM64_IOVA)
> + iommu_put_dma_cookie(domain);
> + if (domain->type & __IOMMU_DOMAIN_ARM64)
> + iommu_domain_free(domain);
> + dev->archdata.dma_ops = NULL;
> + }
> +}
When is this called? In case a device gets removed the IOMMU core and
driver should take care of destroying the domain, at least when its a
default-domain. This is part of the iommu-group handling.
Joerg
More information about the linux-arm-kernel
mailing list