Lines Matching refs:domain
816 struct iommu_domain *domain = iommu_get_domain_for_dev(dev); in do_iommu_attach() local
823 if (!domain) { in do_iommu_attach()
832 domain = ops->domain_alloc(IOMMU_DOMAIN_DMA); in do_iommu_attach()
833 if (!domain) in do_iommu_attach()
836 domain->ops = ops; in do_iommu_attach()
837 domain->type = IOMMU_DOMAIN_DMA | __IOMMU_DOMAIN_FAKE_DEFAULT; in do_iommu_attach()
839 if (iommu_attach_device(domain, dev)) in do_iommu_attach()
843 if (iommu_dma_init_domain(domain, dma_base, size)) in do_iommu_attach()
850 iommu_detach_device(domain, dev); in do_iommu_attach()
852 if (domain->type & __IOMMU_DOMAIN_FAKE_DEFAULT) in do_iommu_attach()
853 iommu_domain_free(domain); in do_iommu_attach()
968 struct iommu_domain *domain = iommu_get_domain_for_dev(dev); in arch_teardown_dma_ops() local
970 if (domain) { in arch_teardown_dma_ops()
971 iommu_detach_device(domain, dev); in arch_teardown_dma_ops()
972 if (domain->type & __IOMMU_DOMAIN_FAKE_DEFAULT) in arch_teardown_dma_ops()
973 iommu_domain_free(domain); in arch_teardown_dma_ops()