diff options
Diffstat (limited to 'arch/x86/kernel/pci-gart_64.c')
-rw-r--r-- | arch/x86/kernel/pci-gart_64.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/arch/x86/kernel/pci-gart_64.c b/arch/x86/kernel/pci-gart_64.c index b85a2f9bb34..aa569db73a2 100644 --- a/arch/x86/kernel/pci-gart_64.c +++ b/arch/x86/kernel/pci-gart_64.c | |||
@@ -27,8 +27,8 @@ | |||
27 | #include <linux/scatterlist.h> | 27 | #include <linux/scatterlist.h> |
28 | #include <linux/iommu-helper.h> | 28 | #include <linux/iommu-helper.h> |
29 | #include <linux/sysdev.h> | 29 | #include <linux/sysdev.h> |
30 | #include <linux/io.h> | ||
30 | #include <asm/atomic.h> | 31 | #include <asm/atomic.h> |
31 | #include <asm/io.h> | ||
32 | #include <asm/mtrr.h> | 32 | #include <asm/mtrr.h> |
33 | #include <asm/pgtable.h> | 33 | #include <asm/pgtable.h> |
34 | #include <asm/proto.h> | 34 | #include <asm/proto.h> |
@@ -175,7 +175,8 @@ static void dump_leak(void) | |||
175 | iommu_leak_pages); | 175 | iommu_leak_pages); |
176 | for (i = 0; i < iommu_leak_pages; i += 2) { | 176 | for (i = 0; i < iommu_leak_pages; i += 2) { |
177 | printk(KERN_DEBUG "%lu: ", iommu_pages-i); | 177 | printk(KERN_DEBUG "%lu: ", iommu_pages-i); |
178 | printk_address((unsigned long) iommu_leak_tab[iommu_pages-i], 0); | 178 | printk_address((unsigned long) iommu_leak_tab[iommu_pages-i], |
179 | 0); | ||
179 | printk(KERN_CONT "%c", (i+1)%2 == 0 ? '\n' : ' '); | 180 | printk(KERN_CONT "%c", (i+1)%2 == 0 ? '\n' : ' '); |
180 | } | 181 | } |
181 | printk(KERN_DEBUG "\n"); | 182 | printk(KERN_DEBUG "\n"); |
@@ -688,7 +689,8 @@ static __init int init_k8_gatt(struct agp_kern_info *info) | |||
688 | if (!error) | 689 | if (!error) |
689 | error = sysdev_register(&device_gart); | 690 | error = sysdev_register(&device_gart); |
690 | if (error) | 691 | if (error) |
691 | panic("Could not register gart_sysdev -- would corrupt data on next suspend"); | 692 | panic("Could not register gart_sysdev -- " |
693 | "would corrupt data on next suspend"); | ||
692 | 694 | ||
693 | flush_gart(); | 695 | flush_gart(); |
694 | 696 | ||
@@ -710,8 +712,6 @@ static __init int init_k8_gatt(struct agp_kern_info *info) | |||
710 | return -1; | 712 | return -1; |
711 | } | 713 | } |
712 | 714 | ||
713 | extern int agp_amd64_init(void); | ||
714 | |||
715 | static struct dma_mapping_ops gart_dma_ops = { | 715 | static struct dma_mapping_ops gart_dma_ops = { |
716 | .map_single = gart_map_single, | 716 | .map_single = gart_map_single, |
717 | .unmap_single = gart_unmap_single, | 717 | .unmap_single = gart_unmap_single, |
@@ -777,8 +777,8 @@ void __init gart_iommu_init(void) | |||
777 | (no_agp && init_k8_gatt(&info) < 0)) { | 777 | (no_agp && init_k8_gatt(&info) < 0)) { |
778 | if (max_pfn > MAX_DMA32_PFN) { | 778 | if (max_pfn > MAX_DMA32_PFN) { |
779 | printk(KERN_WARNING "More than 4GB of memory " | 779 | printk(KERN_WARNING "More than 4GB of memory " |
780 | "but GART IOMMU not available.\n" | 780 | "but GART IOMMU not available.\n"); |
781 | KERN_WARNING "falling back to iommu=soft.\n"); | 781 | printk(KERN_WARNING "falling back to iommu=soft.\n"); |
782 | } | 782 | } |
783 | return; | 783 | return; |
784 | } | 784 | } |
@@ -868,7 +868,8 @@ void __init gart_parse_options(char *p) | |||
868 | if (!strncmp(p, "leak", 4)) { | 868 | if (!strncmp(p, "leak", 4)) { |
869 | leak_trace = 1; | 869 | leak_trace = 1; |
870 | p += 4; | 870 | p += 4; |
871 | if (*p == '=') ++p; | 871 | if (*p == '=') |
872 | ++p; | ||
872 | if (isdigit(*p) && get_option(&p, &arg)) | 873 | if (isdigit(*p) && get_option(&p, &arg)) |
873 | iommu_leak_pages = arg; | 874 | iommu_leak_pages = arg; |
874 | } | 875 | } |