aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86_64/kernel/pci-gart.c
diff options
context:
space:
mode:
authorJon Mason <jdmason@us.ibm.com>2006-06-26 13:58:05 +0200
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-26 10:48:18 -0700
commit8d4f6b93a4aaa6b56b600cd1165c971f4395e4b3 (patch)
tree23955634ded577e53c46390714a6f069b4587c86 /arch/x86_64/kernel/pci-gart.c
parent2bbc419f9d51b44f3fdeea12c5b786bdace82b8e (diff)
downloadkernel_samsung_smdk4412-8d4f6b93a4aaa6b56b600cd1165c971f4395e4b3.zip
kernel_samsung_smdk4412-8d4f6b93a4aaa6b56b600cd1165c971f4395e4b3.tar.gz
kernel_samsung_smdk4412-8d4f6b93a4aaa6b56b600cd1165c971f4395e4b3.tar.bz2
[PATCH] x86_64: Calgary IOMMU - introduce iommu_detected
swiotlb relies on the gart specific iommu_aperture variable to know if we discovered a hardware IOMMU before swiotlb initialization. Introduce iommu_detected to do the same thing, but in a HW IOMMU neutral manner, in preparation for adding the Calgary HW IOMMU. Signed-Off-By: Muli Ben-Yehuda <muli@il.ibm.com> Signed-Off-By: Jon Mason <jdmason@us.ibm.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/x86_64/kernel/pci-gart.c')
-rw-r--r--arch/x86_64/kernel/pci-gart.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86_64/kernel/pci-gart.c b/arch/x86_64/kernel/pci-gart.c
index 82a346e..4f67957 100644
--- a/arch/x86_64/kernel/pci-gart.c
+++ b/arch/x86_64/kernel/pci-gart.c
@@ -597,6 +597,10 @@ static int __init pci_iommu_init(void)
if (swiotlb)
return -ENODEV;
+ /* Did we detect a different HW IOMMU? */
+ if (iommu_detected && !iommu_aperture)
+ return -1;
+
if (no_iommu ||
(!force_iommu && end_pfn <= MAX_DMA32_PFN) ||
!iommu_aperture ||