aboutsummaryrefslogtreecommitdiff
path: root/arch/x86/kernel/pci-gart_64.c
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2010-04-07 12:57:35 +0200
committerJoerg Roedel <joerg.roedel@amd.com>2010-04-07 14:36:30 +0200
commit4b83873d3da0704987cb116833818ed96214ee29 (patch)
tree49ae6049ff73abdb9c11c1c46ef40b634f3deb62 /arch/x86/kernel/pci-gart_64.c
parent39a37ce1cc5eef420604fa68b776ff5dab400340 (diff)
x86/gart: Disable GART explicitly before initialization
If we boot into a crash-kernel the gart might still be enabled and its caches might be dirty. This can result in undefined behavior later. Fix it by explicitly disabling the gart hardware before initialization and flushing the caches after enablement. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'arch/x86/kernel/pci-gart_64.c')
-rw-r--r--arch/x86/kernel/pci-gart_64.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kernel/pci-gart_64.c b/arch/x86/kernel/pci-gart_64.c
index f3af115a573..0ae24d9b44b 100644
--- a/arch/x86/kernel/pci-gart_64.c
+++ b/arch/x86/kernel/pci-gart_64.c
@@ -564,6 +564,9 @@ static void enable_gart_translations(void)
enable_gart_translation(dev, __pa(agp_gatt_table));
}
+
+ /* Flush the GART-TLB to remove stale entries */
+ k8_flush_garts();
}
/*