diff options
author | Yinghai Lu <yhlu.kernel@gmail.com> | 2008-08-19 20:50:21 -0700 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-10-16 16:52:52 +0200 |
commit | e420dfb40c453a9760b86c7f338052bdb4dfa755 (patch) | |
tree | 9a4c04b268b930bebd4fa7818c736820f770cfa2 /include | |
parent | 52b17329d6d0a4824b89206803a430915031ff23 (diff) | |
download | linux-stable-e420dfb40c453a9760b86c7f338052bdb4dfa755.tar.gz linux-stable-e420dfb40c453a9760b86c7f338052bdb4dfa755.tar.bz2 linux-stable-e420dfb40c453a9760b86c7f338052bdb4dfa755.zip |
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')
-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 { }; struct timer_rand_state; +struct irq_2_iommu; /** * struct irq_desc - interrupt descriptor * @@ -163,6 +164,9 @@ struct irq_desc { #else unsigned int kstat_irqs[NR_CPUS]; #endif +#if defined(CONFIG_INTR_REMAP) && defined(CONFIG_HAVE_SPARSE_IRQ) + struct irq_2_iommu *irq_2_iommu; +#endif irq_flow_handler_t handle_irq; struct irq_chip *chip; struct msi_desc *msi_desc; |