diff options
author | Yinghai Lu <yhlu.kernel@gmail.com> | 2008-08-19 23:50:21 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-10-16 10:52:52 -0400 |
commit | e420dfb40c453a9760b86c7f338052bdb4dfa755 (patch) | |
tree | 9a4c04b268b930bebd4fa7818c736820f770cfa2 /include/linux/irq.h | |
parent | 52b17329d6d0a4824b89206803a430915031ff23 (diff) |
x86: put irq_2_iommu pointer into irq_desc
when CONFIG_HAVE_SPARSE_IRQ
preallocate some irq_2_iommu entries, and use get_one_free_irq_2_iomm to
get new one and link to irq_desc if needed.
else will use dyn_array or static array.
v2: <= nr_irqs fix
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/irq.h')
-rw-r--r-- | include/linux/irq.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h index d5749852ee69..788d5a35a580 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h | |||
@@ -128,6 +128,7 @@ struct irq_chip { | |||
128 | }; | 128 | }; |
129 | 129 | ||
130 | struct timer_rand_state; | 130 | struct timer_rand_state; |
131 | struct irq_2_iommu; | ||
131 | /** | 132 | /** |
132 | * struct irq_desc - interrupt descriptor | 133 | * struct irq_desc - interrupt descriptor |
133 | * | 134 | * |
@@ -163,6 +164,9 @@ struct irq_desc { | |||
163 | #else | 164 | #else |
164 | unsigned int kstat_irqs[NR_CPUS]; | 165 | unsigned int kstat_irqs[NR_CPUS]; |
165 | #endif | 166 | #endif |
167 | #if defined(CONFIG_INTR_REMAP) && defined(CONFIG_HAVE_SPARSE_IRQ) | ||
168 | struct irq_2_iommu *irq_2_iommu; | ||
169 | #endif | ||
166 | irq_flow_handler_t handle_irq; | 170 | irq_flow_handler_t handle_irq; |
167 | struct irq_chip *chip; | 171 | struct irq_chip *chip; |
168 | struct msi_desc *msi_desc; | 172 | struct msi_desc *msi_desc; |