aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/dmar.h
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2009-07-23 00:47:29 -0400
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2009-07-23 00:47:29 -0400
commitbd072111e7319d90a7b8127f91c2806b9a6f279e (patch)
tree1686978814a2387ebfc16f9f5778a7f0caaf319b /include/linux/dmar.h
parent24d01c0681bfbc10a99304c48a89ad213d2d7a4b (diff)
parent4be3bd7849165e7efa6b0b35a23d6a3598d97465 (diff)
Merge commit 'v2.6.31-rc4' into next
Diffstat (limited to 'include/linux/dmar.h')
-rw-r--r--include/linux/dmar.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/include/linux/dmar.h b/include/linux/dmar.h
index e397dc342cda..4a2b162c256a 100644
--- a/include/linux/dmar.h
+++ b/include/linux/dmar.h
@@ -108,6 +108,7 @@ struct irte {
108}; 108};
109#ifdef CONFIG_INTR_REMAP 109#ifdef CONFIG_INTR_REMAP
110extern int intr_remapping_enabled; 110extern int intr_remapping_enabled;
111extern int intr_remapping_supported(void);
111extern int enable_intr_remapping(int); 112extern int enable_intr_remapping(int);
112extern void disable_intr_remapping(void); 113extern void disable_intr_remapping(void);
113extern int reenable_intr_remapping(int); 114extern int reenable_intr_remapping(int);
@@ -125,6 +126,8 @@ extern int free_irte(int irq);
125extern int irq_remapped(int irq); 126extern int irq_remapped(int irq);
126extern struct intel_iommu *map_dev_to_ir(struct pci_dev *dev); 127extern struct intel_iommu *map_dev_to_ir(struct pci_dev *dev);
127extern struct intel_iommu *map_ioapic_to_ir(int apic); 128extern struct intel_iommu *map_ioapic_to_ir(int apic);
129extern int set_ioapic_sid(struct irte *irte, int apic);
130extern int set_msi_sid(struct irte *irte, struct pci_dev *dev);
128#else 131#else
129static inline int alloc_irte(struct intel_iommu *iommu, int irq, u16 count) 132static inline int alloc_irte(struct intel_iommu *iommu, int irq, u16 count)
130{ 133{
@@ -155,8 +158,19 @@ static inline struct intel_iommu *map_ioapic_to_ir(int apic)
155{ 158{
156 return NULL; 159 return NULL;
157} 160}
161static inline int set_ioapic_sid(struct irte *irte, int apic)
162{
163 return 0;
164}
165static inline int set_msi_sid(struct irte *irte, struct pci_dev *dev)
166{
167 return 0;
168}
169
158#define irq_remapped(irq) (0) 170#define irq_remapped(irq) (0)
159#define enable_intr_remapping(mode) (-1) 171#define enable_intr_remapping(mode) (-1)
172#define disable_intr_remapping() (0)
173#define reenable_intr_remapping(mode) (0)
160#define intr_remapping_enabled (0) 174#define intr_remapping_enabled (0)
161#endif 175#endif
162 176
@@ -185,6 +199,15 @@ struct dmar_rmrr_unit {
185 199
186#define for_each_rmrr_units(rmrr) \ 200#define for_each_rmrr_units(rmrr) \
187 list_for_each_entry(rmrr, &dmar_rmrr_units, list) 201 list_for_each_entry(rmrr, &dmar_rmrr_units, list)
202
203struct dmar_atsr_unit {
204 struct list_head list; /* list of ATSR units */
205 struct acpi_dmar_header *hdr; /* ACPI header */
206 struct pci_dev **devices; /* target devices */
207 int devices_cnt; /* target device count */
208 u8 include_all:1; /* include all ports */
209};
210
188/* Intel DMAR initialization functions */ 211/* Intel DMAR initialization functions */
189extern int intel_iommu_init(void); 212extern int intel_iommu_init(void);
190#else 213#else