|
@@ -39,6 +39,7 @@
|
|
|
#include <asm/swiotlb.h>
|
|
|
#include <asm/dma.h>
|
|
|
#include <asm/k8.h>
|
|
|
+#include <asm/x86_init.h>
|
|
|
|
|
|
static unsigned long iommu_bus_base; /* GART remapping area (physical) */
|
|
|
static unsigned long iommu_size; /* size of remapping area bytes */
|
|
@@ -688,12 +689,12 @@ static struct dma_map_ops gart_dma_ops = {
|
|
|
.free_coherent = gart_free_coherent,
|
|
|
};
|
|
|
|
|
|
-void gart_iommu_shutdown(void)
|
|
|
+static void gart_iommu_shutdown(void)
|
|
|
{
|
|
|
struct pci_dev *dev;
|
|
|
int i;
|
|
|
|
|
|
- if (no_agp && (dma_ops != &gart_dma_ops))
|
|
|
+ if (no_agp)
|
|
|
return;
|
|
|
|
|
|
for (i = 0; i < num_k8_northbridges; i++) {
|
|
@@ -838,6 +839,7 @@ void __init gart_iommu_init(void)
|
|
|
|
|
|
flush_gart();
|
|
|
dma_ops = &gart_dma_ops;
|
|
|
+ x86_platform.iommu_shutdown = gart_iommu_shutdown;
|
|
|
}
|
|
|
|
|
|
void __init gart_parse_options(char *p)
|