1 #ifndef _ASM_X86_IOMMU_H 2 #define _ASM_X86_IOMMU_H 3 4 extern void pci_iommu_shutdown(void); 5 extern void no_iommu_init(void); 6 extern struct dma_mapping_ops nommu_dma_ops; 7 extern int force_iommu, no_iommu; 8 extern int iommu_detected; 9 extern int dmar_disabled; 10 11 extern unsigned long iommu_nr_pages(unsigned long addr, unsigned long len); 12 13 /* 10 seconds */ 14 #define DMAR_OPERATION_TIMEOUT ((cycles_t) tsc_khz*10*1000) 15 16 #ifdef CONFIG_GART_IOMMU 17 extern int gart_iommu_aperture; 18 extern int gart_iommu_aperture_allowed; 19 extern int gart_iommu_aperture_disabled; 20 21 extern void early_gart_iommu_check(void); 22 extern void gart_iommu_init(void); 23 extern void gart_iommu_shutdown(void); 24 extern void __init gart_parse_options(char *); 25 extern void gart_iommu_hole_init(void); 26 27 #else 28 #define gart_iommu_aperture 0 29 #define gart_iommu_aperture_allowed 0 30 #define gart_iommu_aperture_disabled 1 31 32 static inline void early_gart_iommu_check(void) 33 { 34 } 35 static inline void gart_iommu_init(void) 36 { 37 } 38 static inline void gart_iommu_shutdown(void) 39 { 40 } 41 static inline void gart_parse_options(char *options) 42 { 43 } 44 static inline void gart_iommu_hole_init(void) 45 { 46 } 47 #endif 48 49 #endif /* _ASM_X86_IOMMU_H */ 50