blob: ecc8061904a9ee27210d27efd74dfe4534212fb6 [file] [log] [blame]
FUJITA Tomonorie93be882008-07-10 08:27:49 +09001#ifndef _ASM_X8664_IOMMU_H
2#define _ASM_X8664_IOMMU_H 1
Yinghai Luf2cf8e02007-07-21 17:11:31 +02003
4extern void pci_iommu_shutdown(void);
5extern void no_iommu_init(void);
Alexis Bruemmer1956a962008-07-25 19:44:51 -07006extern struct dma_mapping_ops nommu_dma_ops;
Yinghai Luf2cf8e02007-07-21 17:11:31 +02007extern int force_iommu, no_iommu;
8extern int iommu_detected;
FUJITA Tomonorie93be882008-07-10 08:27:49 +09009
FUJITA Tomonori8cbfd4f42008-07-09 16:29:41 +090010#ifdef CONFIG_GART_IOMMU
FUJITA Tomonorie93be882008-07-10 08:27:49 +090011extern int gart_iommu_aperture;
12extern int gart_iommu_aperture_allowed;
13extern int gart_iommu_aperture_disabled;
14
15extern void early_gart_iommu_check(void);
Yinghai Luf2cf8e02007-07-21 17:11:31 +020016extern void gart_iommu_init(void);
17extern void gart_iommu_shutdown(void);
18extern void __init gart_parse_options(char *);
FUJITA Tomonorie93be882008-07-10 08:27:49 +090019extern void gart_iommu_hole_init(void);
20
Yinghai Luf2cf8e02007-07-21 17:11:31 +020021#else
FUJITA Tomonorie93be882008-07-10 08:27:49 +090022#define gart_iommu_aperture 0
23#define gart_iommu_aperture_allowed 0
24#define gart_iommu_aperture_disabled 1
25
26static inline void early_gart_iommu_check(void)
27{
28}
FUJITA Tomonoriac7ded22008-07-11 10:23:43 +090029static inline void gart_iommu_init(void)
30{
31}
Yinghai Luf2cf8e02007-07-21 17:11:31 +020032static inline void gart_iommu_shutdown(void)
33{
34}
FUJITA Tomonoriac7ded22008-07-11 10:23:43 +090035static inline void gart_parse_options(char *options)
36{
37}
38static inline void gart_iommu_hole_init(void)
39{
40}
Yinghai Luf2cf8e02007-07-21 17:11:31 +020041#endif
42
43#endif