Searched refs:dmar_domain (Results 1 – 8 of 8) sorted by relevance
/linux-6.12.1/drivers/iommu/intel/ |
D | nested.c | 25 struct dmar_domain *dmar_domain = to_dmar_domain(domain); in intel_nested_attach_dev() local 33 if (iommu->agaw < dmar_domain->s2_domain->agaw) { in intel_nested_attach_dev() 43 ret = prepare_domain_attach_device(&dmar_domain->s2_domain->domain, dev); in intel_nested_attach_dev() 49 ret = domain_attach_iommu(dmar_domain, iommu); in intel_nested_attach_dev() 55 ret = cache_tag_assign_domain(dmar_domain, dev, IOMMU_NO_PASID); in intel_nested_attach_dev() 60 IOMMU_NO_PASID, dmar_domain); in intel_nested_attach_dev() 64 info->domain = dmar_domain; in intel_nested_attach_dev() 65 spin_lock_irqsave(&dmar_domain->lock, flags); in intel_nested_attach_dev() 66 list_add(&info->link, &dmar_domain->devices); in intel_nested_attach_dev() 67 spin_unlock_irqrestore(&dmar_domain->lock, flags); in intel_nested_attach_dev() [all …]
|
D | iommu.c | 287 static int domain_pfn_supported(struct dmar_domain *domain, unsigned long pfn) in domain_pfn_supported() 355 static void domain_update_iommu_coherency(struct dmar_domain *domain) in domain_update_iommu_coherency() 385 static int domain_update_iommu_superpage(struct dmar_domain *domain, in domain_update_iommu_superpage() 415 static int domain_update_device_node(struct dmar_domain *domain) in domain_update_device_node() 439 static unsigned long domain_super_pgsize_bitmap(struct dmar_domain *domain) in domain_super_pgsize_bitmap() 456 void domain_update_iommu_cap(struct dmar_domain *domain) in domain_update_iommu_cap() 668 static void domain_flush_cache(struct dmar_domain *domain, in domain_flush_cache() 807 static struct dma_pte *pfn_to_dma_pte(struct dmar_domain *domain, in pfn_to_dma_pte() 865 static struct dma_pte *dma_pfn_level_pte(struct dmar_domain *domain, in dma_pfn_level_pte() 897 static void dma_pte_clear_range(struct dmar_domain *domain, in dma_pte_clear_range() [all …]
|
D | svm.c | 141 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_arch_invalidate_secondary_tlbs() 158 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_mm_release() 187 struct dmar_domain *domain = container_of(mn, struct dmar_domain, notifier); in intel_mm_free_notifier() 203 struct dmar_domain *dmar_domain = to_dmar_domain(domain); in intel_svm_set_dev_pasid() local 229 spin_lock_irqsave(&dmar_domain->lock, flags); in intel_svm_set_dev_pasid() 230 list_add(&dev_pasid->link_domain, &dmar_domain->dev_pasids); in intel_svm_set_dev_pasid() 231 spin_unlock_irqrestore(&dmar_domain->lock, flags); in intel_svm_set_dev_pasid() 298 struct dmar_domain *domain; in intel_drain_pasid_prq() 556 struct dmar_domain *dmar_domain = to_dmar_domain(domain); in intel_svm_domain_free() local 559 mmu_notifier_put(&dmar_domain->notifier); in intel_svm_domain_free() [all …]
|
D | cache.c | 43 static int cache_tag_assign(struct dmar_domain *domain, u16 did, in cache_tag_assign() 85 static void cache_tag_unassign(struct dmar_domain *domain, u16 did, in cache_tag_unassign() 108 static int __cache_tag_assign_domain(struct dmar_domain *domain, u16 did, in __cache_tag_assign_domain() 125 static void __cache_tag_unassign_domain(struct dmar_domain *domain, u16 did, in __cache_tag_unassign_domain() 136 static int __cache_tag_assign_parent_domain(struct dmar_domain *domain, u16 did, in __cache_tag_assign_parent_domain() 153 static void __cache_tag_unassign_parent_domain(struct dmar_domain *domain, u16 did, in __cache_tag_unassign_parent_domain() 164 static u16 domain_get_id_for_dev(struct dmar_domain *domain, struct device *dev) in domain_get_id_for_dev() 187 int cache_tag_assign_domain(struct dmar_domain *domain, in cache_tag_assign_domain() 218 void cache_tag_unassign_domain(struct dmar_domain *domain, in cache_tag_unassign_domain() 338 static void cache_tag_flush_iotlb(struct dmar_domain *domain, struct cache_tag *tag, in cache_tag_flush_iotlb() [all …]
|
D | iommu.h | 600 struct dmar_domain { struct 655 struct dmar_domain *s2_domain; 782 struct dmar_domain *domain; /* pointer to domain */ 808 static inline struct dmar_domain *to_dmar_domain(struct iommu_domain *dom) in to_dmar_domain() 810 return container_of(dom, struct dmar_domain, domain); in to_dmar_domain() 815 domain_id_iommu(struct dmar_domain *domain, struct intel_iommu *iommu) in domain_id_iommu() 1230 int domain_attach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu); 1231 void domain_detach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu); 1235 void domain_update_iommu_cap(struct dmar_domain *domain); 1267 int cache_tag_assign_domain(struct dmar_domain *domain, [all …]
|
D | pasid.h | 297 struct dmar_domain *domain, 305 u32 pasid, struct dmar_domain *domain);
|
D | pasid.c | 352 static int iommu_skip_agaw(struct dmar_domain *domain, in iommu_skip_agaw() 371 struct dmar_domain *domain, in intel_pasid_setup_second_level() 586 u32 pasid, struct dmar_domain *domain) in intel_pasid_setup_nested() 590 struct dmar_domain *s2_domain = domain->s2_domain; in intel_pasid_setup_nested()
|
/linux-6.12.1/arch/x86/kernel/apic/ |
D | msi.c | 344 static struct irq_domain *dmar_domain; in dmar_get_irq_domain() local 349 if (dmar_domain) in dmar_get_irq_domain() 354 dmar_domain = msi_create_irq_domain(fn, &dmar_msi_domain_info, in dmar_get_irq_domain() 356 if (!dmar_domain) in dmar_get_irq_domain() 361 return dmar_domain; in dmar_get_irq_domain()
|