summaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/iommu.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2022-02-14 14:11:44 +0100
committerChristoph Hellwig <hch@lst.de>2022-04-18 07:21:10 +0200
commit78013eaadf696d2105982abb4018fbae394ca08f (patch)
tree018da6dc9f81f26fc4d5ce8df7e1a9e9903593ed /arch/x86/include/asm/iommu.h
parentf39f8d0eb081407e470396fd4cc376c526d13066 (diff)
downloadlinux-stable-78013eaadf696d2105982abb4018fbae394ca08f.tar.gz
linux-stable-78013eaadf696d2105982abb4018fbae394ca08f.tar.bz2
linux-stable-78013eaadf696d2105982abb4018fbae394ca08f.zip
x86: remove the IOMMU table infrastructure
The IOMMU table tries to separate the different IOMMUs into different backends, but actually requires various cross calls. Rewrite the code to do the generic swiotlb/swiotlb-xen setup directly in pci-dma.c and then just call into the IOMMU drivers. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Tested-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Diffstat (limited to 'arch/x86/include/asm/iommu.h')
-rw-r--r--arch/x86/include/asm/iommu.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/include/asm/iommu.h b/arch/x86/include/asm/iommu.h
index bf1ed2ddc74b..dba89ed40d38 100644
--- a/arch/x86/include/asm/iommu.h
+++ b/arch/x86/include/asm/iommu.h
@@ -9,6 +9,12 @@
extern int force_iommu, no_iommu;
extern int iommu_detected;
+#ifdef CONFIG_SWIOTLB
+extern bool x86_swiotlb_enable;
+#else
+#define x86_swiotlb_enable false
+#endif
+
/* 10 seconds */
#define DMAR_OPERATION_TIMEOUT ((cycles_t) tsc_khz*10*1000)