]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
[PATCH] x86_64: IOMMU printk cleanup
authorJon Mason <jdmason@us.ibm.com>
Fri, 3 Feb 2006 20:51:59 +0000 (21:51 +0100)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sun, 5 Feb 2006 00:43:15 +0000 (16:43 -0800)
This patch contains a printk reorder to remove the current problem of
displaying "PCI-DMA: Disabling IOMMU." and then "PCI-DMA: using GART
IOMMU" 20 lines later in dmesg.

It also constains a printk reorder in swiotlb to state swiotlb
enablement prior to describing the location of the bounce buffers, and a
printk reorder to state gart enablement prior to describing the
aperature.

Also constains a whitespace cleanup in arch/x86_64/kernel/setup.c

Tested (along with patch 2/2) on dual opteron with gart enabled,
iommu=soft, and iommu=off.

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>
arch/x86_64/kernel/pci-gart.c
arch/x86_64/kernel/pci-nommu.c
arch/x86_64/kernel/pci-swiotlb.c
arch/x86_64/kernel/setup.c

index 9188b25fad2a01a419f696dd09c960c14f378860..2fe23a6c361bbfa77524472027e47680b2bf05b4 100644 (file)
@@ -645,9 +645,18 @@ static int __init pci_iommu_init(void)
            (no_agp && init_k8_gatt(&info) < 0)) {
                no_iommu = 1;
                no_iommu_init();
+               printk(KERN_INFO "PCI-DMA: Disabling IOMMU.\n");
+               if (end_pfn > MAX_DMA32_PFN) {
+                       printk(KERN_ERR "WARNING more than 4GB of memory "
+                                       "but IOMMU not compiled in.\n"
+                              KERN_ERR "WARNING 32bit PCI may malfunction.\n"
+                              KERN_ERR "You might want to enable "
+                                       "CONFIG_GART_IOMMU\n");
+               }
                return -1;
        }
 
+       printk(KERN_INFO "PCI-DMA: using GART IOMMU.\n");
        aper_size = info.aper_size * 1024 * 1024;       
        iommu_size = check_iommu_size(info.aper_base, aper_size); 
        iommu_pages = iommu_size >> PAGE_SHIFT; 
@@ -721,7 +730,6 @@ static int __init pci_iommu_init(void)
                     
        flush_gart(NULL);
 
-       printk(KERN_INFO "PCI-DMA: using GART IOMMU.\n");
        dma_ops = &gart_dma_ops;
 
        return 0;
index e415649751950d142c6c72c4ba9e2a4bc73a06d7..44adcc2d5e5be43299d8f640161c6ec50658c285 100644 (file)
@@ -88,12 +88,5 @@ void __init no_iommu_init(void)
 {
        if (dma_ops)
                return;
-       printk(KERN_INFO "PCI-DMA: Disabling IOMMU.\n");
        dma_ops = &nommu_dma_ops;
-       if (end_pfn > MAX_DMA32_PFN) {
-               printk(KERN_ERR
-                      "WARNING more than 4GB of memory but IOMMU not compiled in.\n"
-                      KERN_ERR "WARNING 32bit PCI may malfunction.\n"
-                      KERN_ERR "You might want to enable CONFIG_GART_IOMMU\n");
-       }
 }
index 3569a25ad7fb748d559efa73af1cb5a4d0562d5a..990ed67896f2ff514cc6283a65fea24fa00adcf1 100644 (file)
@@ -35,8 +35,8 @@ void pci_swiotlb_init(void)
            (end_pfn > MAX_DMA32_PFN || force_iommu))
               swiotlb = 1;
        if (swiotlb) {
-               swiotlb_init();
                printk(KERN_INFO "PCI-DMA: Using software bounce buffering for IO (SWIOTLB)\n");
+               swiotlb_init();
                dma_ops = &swiotlb_dma_ops;
        }
 }
index 506f152c23890113e02b7e48b9a630d1d17b150e..363db5a003df2a15198fb6da53ac3203132bc391 100644 (file)
@@ -741,7 +741,7 @@ void __init setup_arch(char **cmdline_p)
        e820_setup_gap();
 
 #ifdef CONFIG_GART_IOMMU
-       iommu_hole_init();
+       iommu_hole_init();
 #endif
 
 #ifdef CONFIG_VT