aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/dmar.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/include/linux/dmar.h b/include/linux/dmar.h
index 56c73b847551..3ab07e425583 100644
--- a/include/linux/dmar.h
+++ b/include/linux/dmar.h
@@ -46,12 +46,14 @@ extern int intel_iommu_init(void);
46 46
47extern int dmar_table_init(void); 47extern int dmar_table_init(void);
48extern int early_dmar_detect(void); 48extern int early_dmar_detect(void);
49extern int dmar_dev_scope_init(void);
49 50
50extern struct list_head dmar_drhd_units; 51extern struct list_head dmar_drhd_units;
51extern struct list_head dmar_rmrr_units; 52extern struct list_head dmar_rmrr_units;
52 53
53struct dmar_drhd_unit { 54struct dmar_drhd_unit {
54 struct list_head list; /* list of drhd units */ 55 struct list_head list; /* list of drhd units */
56 struct acpi_dmar_header *hdr; /* ACPI header */
55 u64 reg_base_addr; /* register base address*/ 57 u64 reg_base_addr; /* register base address*/
56 struct pci_dev **devices; /* target device array */ 58 struct pci_dev **devices; /* target device array */
57 int devices_cnt; /* target device count */ 59 int devices_cnt; /* target device count */
@@ -62,6 +64,7 @@ struct dmar_drhd_unit {
62 64
63struct dmar_rmrr_unit { 65struct dmar_rmrr_unit {
64 struct list_head list; /* list of rmrr units */ 66 struct list_head list; /* list of rmrr units */
67 struct acpi_dmar_header *hdr; /* ACPI header */
65 u64 base_address; /* reserved base address*/ 68 u64 base_address; /* reserved base address*/
66 u64 end_address; /* reserved end address */ 69 u64 end_address; /* reserved end address */
67 struct pci_dev **devices; /* target devices */ 70 struct pci_dev **devices; /* target devices */
@@ -72,6 +75,8 @@ struct dmar_rmrr_unit {
72 list_for_each_entry(drhd, &dmar_drhd_units, list) 75 list_for_each_entry(drhd, &dmar_drhd_units, list)
73#define for_each_rmrr_units(rmrr) \ 76#define for_each_rmrr_units(rmrr) \
74 list_for_each_entry(rmrr, &dmar_rmrr_units, list) 77 list_for_each_entry(rmrr, &dmar_rmrr_units, list)
78
79extern int alloc_iommu(struct dmar_drhd_unit *);
75#else 80#else
76static inline void detect_intel_iommu(void) 81static inline void detect_intel_iommu(void)
77{ 82{
@@ -81,6 +86,9 @@ static inline int intel_iommu_init(void)
81{ 86{
82 return -ENODEV; 87 return -ENODEV;
83} 88}
84 89static inline int dmar_table_init(void)
90{
91 return -ENODEV;
92}
85#endif /* !CONFIG_DMAR */ 93#endif /* !CONFIG_DMAR */
86#endif /* __DMAR_H__ */ 94#endif /* __DMAR_H__ */