3b1d9e2b2d
Caching tag is a combination of tags used by the hardware to cache various translations. Whenever a mapping in a domain is changed, the IOMMU driver should invalidate the caches with the caching tags. The VT-d specification describes caching tags in section 6.2.1, Tagging of Cached Translations. Add interface to assign caching tags to an IOMMU domain when attached to a RID or PASID, and unassign caching tags when a domain is detached from a RID or PASID. All caching tags are listed in the per-domain tag list and are protected by a dedicated lock. In addition to the basic IOTLB and devTLB caching tag types, NESTING_IOTLB and NESTING_DEVTLB tag types are also introduced. These tags are used for caches that store translations for DMA accesses through a nested user domain. They are affected by changes to mappings in the parent domain. Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> Link: https://lore.kernel.org/r/20240416080656.60968-2-baolu.lu@linux.intel.com Signed-off-by: Joerg Roedel <jroedel@suse.de>
11 lines
425 B
Makefile
11 lines
425 B
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
obj-$(CONFIG_DMAR_TABLE) += dmar.o
|
|
obj-$(CONFIG_INTEL_IOMMU) += iommu.o pasid.o nested.o cache.o
|
|
obj-$(CONFIG_DMAR_TABLE) += trace.o cap_audit.o
|
|
obj-$(CONFIG_DMAR_PERF) += perf.o
|
|
obj-$(CONFIG_INTEL_IOMMU_DEBUGFS) += debugfs.o
|
|
obj-$(CONFIG_INTEL_IOMMU_SVM) += svm.o
|
|
ifdef CONFIG_INTEL_IOMMU
|
|
obj-$(CONFIG_IRQ_REMAP) += irq_remapping.o
|
|
endif
|
|
obj-$(CONFIG_INTEL_IOMMU_PERF_EVENTS) += perfmon.o
|