Merge branch 'avr32-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemo...
[sfrench/cifs-2.6.git] / arch / x86 / kernel / pci-dma_64.c
index 393e2725a6e31a386a9b28817317990ef5d79871..375cb2bc45be9a1f6bbf42c4666a739002d88c4e 100644 (file)
@@ -9,11 +9,10 @@
 #include <linux/module.h>
 #include <linux/dmar.h>
 #include <asm/io.h>
-#include <asm/iommu.h>
+#include <asm/gart.h>
 #include <asm/calgary.h>
 
-int iommu_merge __read_mostly = 1;
-EXPORT_SYMBOL(iommu_merge);
+int iommu_merge __read_mostly = 0;
 
 dma_addr_t bad_dma_address __read_mostly;
 EXPORT_SYMBOL(bad_dma_address);
@@ -54,11 +53,6 @@ dma_alloc_pages(struct device *dev, gfp_t gfp, unsigned order)
        int node;
 
        node = dev_to_node(dev);
-       if (node == -1)
-               node = numa_node_id();
-
-       if (node < first_node(node_online_map))
-               node = first_node(node_online_map);
 
        page = alloc_pages_node(node, gfp, order);
        return page ? page_address(page) : NULL;
@@ -230,7 +224,7 @@ EXPORT_SYMBOL(dma_set_mask);
  * See <Documentation/x86_64/boot-options.txt> for the iommu kernel parameter
  * documentation.
  */
-__init int iommu_setup(char *p)
+static __init int iommu_setup(char *p)
 {
        iommu_merge = 1;
 
@@ -275,7 +269,7 @@ __init int iommu_setup(char *p)
                        swiotlb = 1;
 #endif
 
-#ifdef CONFIG_IOMMU
+#ifdef CONFIG_GART_IOMMU
                gart_parse_options(p);
 #endif
 
@@ -298,8 +292,8 @@ void __init pci_iommu_alloc(void)
         * The order of these functions is important for
         * fall-back/fail-over reasons
         */
-#ifdef CONFIG_IOMMU
-       iommu_hole_init();
+#ifdef CONFIG_GART_IOMMU
+       gart_iommu_hole_init();
 #endif
 
 #ifdef CONFIG_CALGARY_IOMMU
@@ -321,7 +315,7 @@ static int __init pci_iommu_init(void)
 
        intel_iommu_init();
 
-#ifdef CONFIG_IOMMU
+#ifdef CONFIG_GART_IOMMU
        gart_iommu_init();
 #endif