dmar_domain 354 arch/x86/kernel/apic/msi.c static struct irq_domain *dmar_domain; dmar_domain 359 arch/x86/kernel/apic/msi.c if (dmar_domain) dmar_domain 364 arch/x86/kernel/apic/msi.c dmar_domain = msi_create_irq_domain(fn, &dmar_msi_domain_info, dmar_domain 370 arch/x86/kernel/apic/msi.c return dmar_domain; dmar_domain 296 drivers/iommu/intel-iommu.c static struct dmar_domain *si_domain; dmar_domain 340 drivers/iommu/intel-iommu.c static void domain_exit(struct dmar_domain *domain); dmar_domain 341 drivers/iommu/intel-iommu.c static void domain_remove_dev_info(struct dmar_domain *domain); dmar_domain 346 drivers/iommu/intel-iommu.c static int domain_detach_iommu(struct dmar_domain *domain, dmar_domain 432 drivers/iommu/intel-iommu.c static struct dmar_domain *to_dmar_domain(struct iommu_domain *dom) dmar_domain 434 drivers/iommu/intel-iommu.c return container_of(dom, struct dmar_domain, domain); dmar_domain 484 drivers/iommu/intel-iommu.c static struct dmar_domain* get_iommu_domain(struct intel_iommu *iommu, u16 did) dmar_domain 486 drivers/iommu/intel-iommu.c struct dmar_domain **domains; dmar_domain 497 drivers/iommu/intel-iommu.c struct dmar_domain *domain) dmar_domain 499 drivers/iommu/intel-iommu.c struct dmar_domain **domains; dmar_domain 503 drivers/iommu/intel-iommu.c size_t size = 256 * sizeof(struct dmar_domain *); dmar_domain 550 drivers/iommu/intel-iommu.c static inline int domain_type_is_si(struct dmar_domain *domain) dmar_domain 555 drivers/iommu/intel-iommu.c static inline int domain_pfn_supported(struct dmar_domain *domain, dmar_domain 597 drivers/iommu/intel-iommu.c struct intel_iommu *domain_get_iommu(struct dmar_domain *domain) dmar_domain 614 drivers/iommu/intel-iommu.c static void domain_update_iommu_coherency(struct dmar_domain *domain) dmar_domain 689 drivers/iommu/intel-iommu.c static void domain_update_iommu_cap(struct dmar_domain *domain) dmar_domain 831 drivers/iommu/intel-iommu.c static void domain_flush_cache(struct dmar_domain *domain, dmar_domain 881 drivers/iommu/intel-iommu.c static struct dma_pte *pfn_to_dma_pte(struct dmar_domain *domain, dmar_domain 936 drivers/iommu/intel-iommu.c static struct dma_pte *dma_pfn_level_pte(struct dmar_domain *domain, dmar_domain 968 drivers/iommu/intel-iommu.c static void dma_pte_clear_range(struct dmar_domain *domain, dmar_domain 999 drivers/iommu/intel-iommu.c static void dma_pte_free_level(struct dmar_domain *domain, int level, dmar_domain 1042 drivers/iommu/intel-iommu.c static void dma_pte_free_pagetable(struct dmar_domain *domain, dmar_domain 1070 drivers/iommu/intel-iommu.c static struct page *dma_pte_list_pagetables(struct dmar_domain *domain, dmar_domain 1094 drivers/iommu/intel-iommu.c static struct page *dma_pte_clear_level(struct dmar_domain *domain, int level, dmar_domain 1146 drivers/iommu/intel-iommu.c static struct page *domain_unmap(struct dmar_domain *domain, dmar_domain 1343 drivers/iommu/intel-iommu.c iommu_support_dev_iotlb (struct dmar_domain *domain, struct intel_iommu *iommu, dmar_domain 1364 drivers/iommu/intel-iommu.c static void domain_update_iotlb(struct dmar_domain *domain) dmar_domain 1463 drivers/iommu/intel-iommu.c static void iommu_flush_dev_iotlb(struct dmar_domain *domain, dmar_domain 1487 drivers/iommu/intel-iommu.c struct dmar_domain *domain, dmar_domain 1522 drivers/iommu/intel-iommu.c struct dmar_domain *domain, dmar_domain 1534 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 1537 drivers/iommu/intel-iommu.c domain = container_of(iovad, struct dmar_domain, iovad); dmar_domain 1622 drivers/iommu/intel-iommu.c size = (ALIGN(ndomains, 256) >> 8) * sizeof(struct dmar_domain **); dmar_domain 1626 drivers/iommu/intel-iommu.c size = 256 * sizeof(struct dmar_domain *); dmar_domain 1712 drivers/iommu/intel-iommu.c static struct dmar_domain *alloc_domain(int flags) dmar_domain 1714 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 1730 drivers/iommu/intel-iommu.c static int domain_attach_iommu(struct dmar_domain *domain, dmar_domain 1764 drivers/iommu/intel-iommu.c static int domain_detach_iommu(struct dmar_domain *domain, dmar_domain 1828 drivers/iommu/intel-iommu.c static void domain_reserve_special_ranges(struct dmar_domain *domain) dmar_domain 1847 drivers/iommu/intel-iommu.c static int domain_init(struct dmar_domain *domain, struct intel_iommu *iommu, dmar_domain 1904 drivers/iommu/intel-iommu.c static void domain_exit(struct dmar_domain *domain) dmar_domain 1973 drivers/iommu/intel-iommu.c static int domain_context_mapping_one(struct dmar_domain *domain, dmar_domain 2122 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 2138 drivers/iommu/intel-iommu.c domain_context_mapping(struct dmar_domain *domain, struct device *dev) dmar_domain 2196 drivers/iommu/intel-iommu.c static inline int hardware_largepage_caps(struct dmar_domain *domain, dmar_domain 2223 drivers/iommu/intel-iommu.c static int __domain_mapping(struct dmar_domain *domain, unsigned long iov_pfn, dmar_domain 2338 drivers/iommu/intel-iommu.c static int domain_mapping(struct dmar_domain *domain, unsigned long iov_pfn, dmar_domain 2358 drivers/iommu/intel-iommu.c static inline int domain_sg_mapping(struct dmar_domain *domain, unsigned long iov_pfn, dmar_domain 2365 drivers/iommu/intel-iommu.c static inline int domain_pfn_mapping(struct dmar_domain *domain, unsigned long iov_pfn, dmar_domain 2412 drivers/iommu/intel-iommu.c static void domain_remove_dev_info(struct dmar_domain *domain) dmar_domain 2427 drivers/iommu/intel-iommu.c static struct dmar_domain *find_domain(struct device *dev) dmar_domain 2461 drivers/iommu/intel-iommu.c static struct dmar_domain *dmar_insert_one_dev_info(struct intel_iommu *iommu, dmar_domain 2464 drivers/iommu/intel-iommu.c struct dmar_domain *domain) dmar_domain 2466 drivers/iommu/intel-iommu.c struct dmar_domain *found = NULL; dmar_domain 2586 drivers/iommu/intel-iommu.c static struct dmar_domain *find_or_alloc_domain(struct device *dev, int gaw) dmar_domain 2589 drivers/iommu/intel-iommu.c struct dmar_domain *domain = NULL; dmar_domain 2632 drivers/iommu/intel-iommu.c static struct dmar_domain *set_domain_for_dev(struct device *dev, dmar_domain 2633 drivers/iommu/intel-iommu.c struct dmar_domain *domain) dmar_domain 2636 drivers/iommu/intel-iommu.c struct dmar_domain *tmp; dmar_domain 2668 drivers/iommu/intel-iommu.c static int iommu_domain_identity_map(struct dmar_domain *domain, dmar_domain 2694 drivers/iommu/intel-iommu.c struct dmar_domain *domain, dmar_domain 2732 drivers/iommu/intel-iommu.c static int md_domain_init(struct dmar_domain *domain, int guest_width); dmar_domain 2798 drivers/iommu/intel-iommu.c static int domain_add_dev_info(struct dmar_domain *domain, struct device *dev) dmar_domain 2800 drivers/iommu/intel-iommu.c struct dmar_domain *ndomain; dmar_domain 3369 drivers/iommu/intel-iommu.c struct dmar_domain *domain, dmar_domain 3401 drivers/iommu/intel-iommu.c static struct dmar_domain *get_private_domain_for_dev(struct device *dev) dmar_domain 3403 drivers/iommu/intel-iommu.c struct dmar_domain *domain, *tmp; dmar_domain 3475 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain; dmar_domain 3479 drivers/iommu/intel-iommu.c dmar_domain = to_dmar_domain(domain); dmar_domain 3480 drivers/iommu/intel-iommu.c dmar_domain->flags |= DOMAIN_FLAG_LOSE_CHILDREN; dmar_domain 3495 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 3574 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 3712 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 3794 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 3812 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 3898 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 4041 drivers/iommu/intel-iommu.c sizeof(struct dmar_domain), dmar_domain 4723 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 5088 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 5138 drivers/iommu/intel-iommu.c static int md_domain_init(struct dmar_domain *domain, int guest_width) dmar_domain 5165 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain; dmar_domain 5172 drivers/iommu/intel-iommu.c dmar_domain = alloc_domain(0); dmar_domain 5173 drivers/iommu/intel-iommu.c if (!dmar_domain) { dmar_domain 5177 drivers/iommu/intel-iommu.c if (md_domain_init(dmar_domain, DEFAULT_DOMAIN_ADDRESS_WIDTH)) { dmar_domain 5179 drivers/iommu/intel-iommu.c domain_exit(dmar_domain); dmar_domain 5184 drivers/iommu/intel-iommu.c init_iova_flush_queue(&dmar_domain->iovad, dmar_domain 5190 drivers/iommu/intel-iommu.c domain_update_iommu_cap(dmar_domain); dmar_domain 5192 drivers/iommu/intel-iommu.c domain = &dmar_domain->domain; dmar_domain 5195 drivers/iommu/intel-iommu.c __DOMAIN_MAX_ADDR(dmar_domain->gaw); dmar_domain 5227 drivers/iommu/intel-iommu.c static void auxiliary_link_device(struct dmar_domain *domain, dmar_domain 5240 drivers/iommu/intel-iommu.c static void auxiliary_unlink_device(struct dmar_domain *domain, dmar_domain 5256 drivers/iommu/intel-iommu.c static int aux_domain_add_dev(struct dmar_domain *domain, dmar_domain 5315 drivers/iommu/intel-iommu.c static void aux_domain_remove_dev(struct dmar_domain *domain, dmar_domain 5342 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain = to_dmar_domain(domain); dmar_domain 5356 drivers/iommu/intel-iommu.c if (dmar_domain->max_addr > (1LL << addr_width)) { dmar_domain 5359 drivers/iommu/intel-iommu.c __func__, addr_width, dmar_domain->max_addr); dmar_domain 5362 drivers/iommu/intel-iommu.c dmar_domain->gaw = addr_width; dmar_domain 5367 drivers/iommu/intel-iommu.c while (iommu->agaw < dmar_domain->agaw) { dmar_domain 5370 drivers/iommu/intel-iommu.c pte = dmar_domain->pgd; dmar_domain 5372 drivers/iommu/intel-iommu.c dmar_domain->pgd = (struct dma_pte *) dmar_domain 5376 drivers/iommu/intel-iommu.c dmar_domain->agaw--; dmar_domain 5398 drivers/iommu/intel-iommu.c struct dmar_domain *old_domain; dmar_domain 5443 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain = to_dmar_domain(domain); dmar_domain 5452 drivers/iommu/intel-iommu.c if ((iommu_prot & IOMMU_CACHE) && dmar_domain->iommu_snooping) dmar_domain 5456 drivers/iommu/intel-iommu.c if (dmar_domain->max_addr < max_addr) { dmar_domain 5460 drivers/iommu/intel-iommu.c end = __DOMAIN_MAX_ADDR(dmar_domain->gaw) + 1; dmar_domain 5464 drivers/iommu/intel-iommu.c __func__, dmar_domain->gaw, max_addr); dmar_domain 5467 drivers/iommu/intel-iommu.c dmar_domain->max_addr = max_addr; dmar_domain 5472 drivers/iommu/intel-iommu.c ret = domain_pfn_mapping(dmar_domain, iova >> VTD_PAGE_SHIFT, dmar_domain 5481 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain = to_dmar_domain(domain); dmar_domain 5489 drivers/iommu/intel-iommu.c BUG_ON(!pfn_to_dma_pte(dmar_domain, iova >> VTD_PAGE_SHIFT, &level)); dmar_domain 5497 drivers/iommu/intel-iommu.c freelist = domain_unmap(dmar_domain, start_pfn, last_pfn); dmar_domain 5501 drivers/iommu/intel-iommu.c for_each_domain_iommu(iommu_id, dmar_domain) dmar_domain 5502 drivers/iommu/intel-iommu.c iommu_flush_iotlb_psi(g_iommus[iommu_id], dmar_domain, dmar_domain 5507 drivers/iommu/intel-iommu.c if (dmar_domain->max_addr == iova + size) dmar_domain 5508 drivers/iommu/intel-iommu.c dmar_domain->max_addr = iova; dmar_domain 5516 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain = to_dmar_domain(domain); dmar_domain 5521 drivers/iommu/intel-iommu.c pte = pfn_to_dma_pte(dmar_domain, iova >> VTD_PAGE_SHIFT, &level); dmar_domain 5578 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain; dmar_domain 5604 drivers/iommu/intel-iommu.c dmar_domain = to_dmar_domain(domain); dmar_domain 5610 drivers/iommu/intel-iommu.c dmar_domain->flags |= DOMAIN_FLAG_LOSE_CHILDREN; dmar_domain 5621 drivers/iommu/intel-iommu.c dmar_domain->flags |= DOMAIN_FLAG_LOSE_CHILDREN; dmar_domain 5736 drivers/iommu/intel-iommu.c struct dmar_domain *domain; dmar_domain 5787 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain = to_dmar_domain(domain); dmar_domain 5793 drivers/iommu/intel-iommu.c WARN_ON_ONCE(!reserve_iova(&dmar_domain->iovad, start, end)); dmar_domain 5946 drivers/iommu/intel-iommu.c struct dmar_domain *dmar_domain = to_dmar_domain(domain); dmar_domain 5948 drivers/iommu/intel-iommu.c return dmar_domain->default_pasid > 0 ? dmar_domain 5949 drivers/iommu/intel-iommu.c dmar_domain->default_pasid : -EINVAL; dmar_domain 539 drivers/iommu/intel-pasid.c struct dmar_domain *domain, dmar_domain 612 drivers/iommu/intel-pasid.c struct dmar_domain *domain, dmar_domain 91 drivers/iommu/intel-pasid.h struct dmar_domain *domain, dmar_domain 94 drivers/iommu/intel-pasid.h struct dmar_domain *domain, dmar_domain 538 include/linux/intel-iommu.h struct dmar_domain ***domains; /* ptr to domains */ dmar_domain 582 include/linux/intel-iommu.h struct dmar_domain *domain; /* pointer to domain */ dmar_domain 656 include/linux/intel-iommu.h struct intel_iommu *domain_get_iommu(struct dmar_domain *domain);