x86: move initialization functions to pci-dma.c
initcalls that triggers the various possibiities for dma subsys are moved to pci-dma.c. Signed-off-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
f9c258de34
commit
cb5867a5d8
|
@ -1,4 +1,8 @@
|
||||||
#include <linux/dma-mapping.h>
|
#include <linux/dma-mapping.h>
|
||||||
|
#include <linux/dmar.h>
|
||||||
|
|
||||||
|
#include <asm/gart.h>
|
||||||
|
#include <asm/calgary.h>
|
||||||
|
|
||||||
const struct dma_mapping_ops *dma_ops;
|
const struct dma_mapping_ops *dma_ops;
|
||||||
EXPORT_SYMBOL(dma_ops);
|
EXPORT_SYMBOL(dma_ops);
|
||||||
|
@ -22,4 +26,25 @@ int dma_set_mask(struct device *dev, u64 mask)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(dma_set_mask);
|
EXPORT_SYMBOL(dma_set_mask);
|
||||||
|
|
||||||
|
static int __init pci_iommu_init(void)
|
||||||
|
{
|
||||||
|
#ifdef CONFIG_CALGARY_IOMMU
|
||||||
|
calgary_iommu_init();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
intel_iommu_init();
|
||||||
|
|
||||||
|
#ifdef CONFIG_GART_IOMMU
|
||||||
|
gart_iommu_init();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
no_iommu_init();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void pci_iommu_shutdown(void)
|
||||||
|
{
|
||||||
|
gart_iommu_shutdown();
|
||||||
|
}
|
||||||
|
/* Must execute after PCI subsystem */
|
||||||
|
fs_initcall(pci_iommu_init);
|
||||||
|
|
|
@ -339,27 +339,6 @@ void __init pci_iommu_alloc(void)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __init pci_iommu_init(void)
|
|
||||||
{
|
|
||||||
#ifdef CONFIG_CALGARY_IOMMU
|
|
||||||
calgary_iommu_init();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
intel_iommu_init();
|
|
||||||
|
|
||||||
#ifdef CONFIG_GART_IOMMU
|
|
||||||
gart_iommu_init();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
no_iommu_init();
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void pci_iommu_shutdown(void)
|
|
||||||
{
|
|
||||||
gart_iommu_shutdown();
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef CONFIG_PCI
|
#ifdef CONFIG_PCI
|
||||||
/* Many VIA bridges seem to corrupt data for DAC. Disable it here */
|
/* Many VIA bridges seem to corrupt data for DAC. Disable it here */
|
||||||
|
|
||||||
|
@ -372,5 +351,3 @@ static __devinit void via_no_dac(struct pci_dev *dev)
|
||||||
}
|
}
|
||||||
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_ANY_ID, via_no_dac);
|
DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_ANY_ID, via_no_dac);
|
||||||
#endif
|
#endif
|
||||||
/* Must execute after PCI subsystem */
|
|
||||||
fs_initcall(pci_iommu_init);
|
|
||||||
|
|
Loading…
Reference in New Issue