diff options
Diffstat (limited to 'arch/x86/kernel/pci-dma.c')
| -rw-r--r-- | arch/x86/kernel/pci-dma.c | 8 | 
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c index 745579bc825..47630479b06 100644 --- a/arch/x86/kernel/pci-dma.c +++ b/arch/x86/kernel/pci-dma.c @@ -32,6 +32,8 @@ int no_iommu __read_mostly;  /* Set this to 1 if there is a HW IOMMU in the system */  int iommu_detected __read_mostly = 0; +int iommu_pass_through; +  dma_addr_t bad_dma_address __read_mostly = 0;  EXPORT_SYMBOL(bad_dma_address); @@ -209,6 +211,10 @@ static __init int iommu_setup(char *p)  #ifdef CONFIG_SWIOTLB  		if (!strncmp(p, "soft", 4))  			swiotlb = 1; +		if (!strncmp(p, "pt", 2)) { +			iommu_pass_through = 1; +			return 1; +		}  #endif  		gart_parse_options(p); @@ -290,6 +296,8 @@ static int __init pci_iommu_init(void)  void pci_iommu_shutdown(void)  {  	gart_iommu_shutdown(); + +	amd_iommu_shutdown();  }  /* Must execute after PCI subsystem */  fs_initcall(pci_iommu_init);  |