| /linux/drivers/iommu/intel/ |
| H A D | nested.c | 25 struct dmar_domain *dmar_domain = to_dmar_domain(domain); in intel_nested_attach_dev() local 37 ret = paging_domain_compatible(&dmar_domain->s2_domain->domain, dev); in intel_nested_attach_dev() 43 ret = domain_attach_iommu(dmar_domain, iommu); in intel_nested_attach_dev() 49 ret = cache_tag_assign_domain(dmar_domain, dev, IOMMU_NO_PASID); in intel_nested_attach_dev() 58 IOMMU_NO_PASID, dmar_domain); in intel_nested_attach_dev() 62 info->domain = dmar_domain; in intel_nested_attach_dev() 64 spin_lock_irqsave(&dmar_domain->lock, flags); in intel_nested_attach_dev() 65 list_add(&info->link, &dmar_domain->devices); in intel_nested_attach_dev() 66 spin_unlock_irqrestore(&dmar_domain->lock, flags); in intel_nested_attach_dev() 72 cache_tag_unassign_domain(dmar_domain, dev, IOMMU_NO_PASID); in intel_nested_attach_dev() [all …]
|
| H A D | iommu.c | 828 domain_lookup_dev_info(struct dmar_domain *domain, in domain_lookup_dev_info() 1025 int domain_attach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu) in domain_attach_iommu() 1071 void domain_detach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu) in domain_detach_iommu() 1142 static int domain_context_mapping_one(struct dmar_domain *domain, in domain_context_mapping_one() 1202 struct dmar_domain *domain = opaque; in domain_context_mapping_cb() 1209 domain_context_mapping(struct dmar_domain *domain, struct device *dev) in domain_context_mapping() 1262 struct dmar_domain *domain, in domain_setup_second_level() 1283 struct dmar_domain *domain, in domain_setup_first_level() 1309 static int dmar_domain_attach_device(struct dmar_domain *domain, in dmar_domain_attach_device() 2778 static struct dmar_domain *paging_domain_alloc(void) in paging_domain_alloc() [all …]
|
| H A D | svm.c | 55 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_arch_invalidate_secondary_tlbs() 72 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_mm_release() 101 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_mm_free_notifier() 196 struct dmar_domain *dmar_domain = to_dmar_domain(domain); in intel_svm_domain_free() local 199 mmu_notifier_put(&dmar_domain->notifier); in intel_svm_domain_free() 210 struct dmar_domain *domain; in intel_svm_domain_alloc()
|
| H A D | cache.c | 43 int cache_tag_assign(struct dmar_domain *domain, u16 did, struct device *dev, in cache_tag_assign() 93 static void cache_tag_unassign(struct dmar_domain *domain, u16 did, in cache_tag_unassign() 117 static int domain_qi_batch_alloc(struct dmar_domain *domain) in domain_qi_batch_alloc() 135 static int __cache_tag_assign_domain(struct dmar_domain *domain, u16 did, in __cache_tag_assign_domain() 156 static void __cache_tag_unassign_domain(struct dmar_domain *domain, u16 did, in __cache_tag_unassign_domain() 167 static int __cache_tag_assign_parent_domain(struct dmar_domain *domain, u16 did, in __cache_tag_assign_parent_domain() 188 static void __cache_tag_unassign_parent_domain(struct dmar_domain *domain, u16 did, in __cache_tag_unassign_parent_domain() 199 static u16 domain_get_id_for_dev(struct dmar_domain *domain, struct device *dev) in domain_get_id_for_dev() 222 int cache_tag_assign_domain(struct dmar_domain *domain, in cache_tag_assign_domain() 246 void cache_tag_unassign_domain(struct dmar_domain *domain, in cache_tag_unassign_domain() [all …]
|
| H A D | iommu.h | 597 struct dmar_domain { struct 636 struct dmar_domain *s2_domain; argument 649 PT_IOMMU_CHECK_DOMAIN(struct dmar_domain, iommu, domain); 650 PT_IOMMU_CHECK_DOMAIN(struct dmar_domain, sspt.iommu, domain); 651 PT_IOMMU_CHECK_DOMAIN(struct dmar_domain, fspt.iommu, domain); 763 struct dmar_domain *domain; /* pointer to domain */ 789 static inline struct dmar_domain *to_dmar_domain(struct iommu_domain *dom) in to_dmar_domain() 791 return container_of(dom, struct dmar_domain, domain); in to_dmar_domain() 814 domain_id_iommu(struct dmar_domain *domain, struct intel_iommu *iommu) in domain_id_iommu() 1194 int domain_attach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu); [all …]
|
| H A D | pasid.c | 425 struct dmar_domain *domain, u16 did) in pasid_pte_config_second_level() 447 struct dmar_domain *domain, in intel_pasid_setup_second_level() 624 struct dmar_domain *s2_domain, in pasid_pte_config_nestd() 676 u32 pasid, struct dmar_domain *domain) in intel_pasid_setup_nested() 679 struct dmar_domain *s2_domain = domain->s2_domain; in intel_pasid_setup_nested()
|
| H A D | pasid.h | 310 struct dmar_domain *domain, 318 u32 pasid, struct dmar_domain *domain);
|
| H A D | prq.c | 63 struct dmar_domain *domain; in intel_iommu_drain_pasid_prq()
|
| /linux/arch/x86/kernel/apic/ |
| H A D | msi.c | 345 static struct irq_domain *dmar_domain; in dmar_get_irq_domain() local 350 if (dmar_domain) in dmar_get_irq_domain() 355 dmar_domain = msi_create_irq_domain(fn, &dmar_msi_domain_info, in dmar_get_irq_domain() 357 if (!dmar_domain) in dmar_get_irq_domain() 362 return dmar_domain; in dmar_get_irq_domain()
|