Lines Matching defs:io_domain
75 struct iommu_domain io_domain;
86 return container_of(dom, struct ipmmu_vmsa_domain, io_domain);
441 domain->io_domain.geometry.aperture_end = DMA_BIT_MASK(32);
442 domain->io_domain.geometry.force_aperture = true;
531 if (!report_iommu_fault(&domain->io_domain, mmu->dev, iova, 0))
579 return &domain->io_domain;
584 struct iommu_domain *io_domain = NULL;
588 io_domain = __ipmmu_domain_alloc(type);
592 io_domain = __ipmmu_domain_alloc(type);
593 if (io_domain && iommu_get_dma_cookie(io_domain)) {
594 kfree(io_domain);
595 io_domain = NULL;
600 return io_domain;
603 static void ipmmu_domain_free(struct iommu_domain *io_domain)
605 struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain);
611 iommu_put_dma_cookie(io_domain);
617 static int ipmmu_attach_device(struct iommu_domain *io_domain,
622 struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain);
666 static void ipmmu_detach_device(struct iommu_domain *io_domain,
670 struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain);
681 static int ipmmu_map(struct iommu_domain *io_domain, unsigned long iova,
684 struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain);
692 static size_t ipmmu_unmap(struct iommu_domain *io_domain, unsigned long iova,
695 struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain);
700 static void ipmmu_flush_iotlb_all(struct iommu_domain *io_domain)
702 struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain);
708 static void ipmmu_iotlb_sync(struct iommu_domain *io_domain,
711 ipmmu_flush_iotlb_all(io_domain);
714 static phys_addr_t ipmmu_iova_to_phys(struct iommu_domain *io_domain,
717 struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain);