diff options
Diffstat (limited to 'include/asm-ia64')
-rw-r--r-- | include/asm-ia64/hw_irq.h | 4 | ||||
-rw-r--r-- | include/asm-ia64/irq.h | 9 |
2 files changed, 10 insertions, 3 deletions
diff --git a/include/asm-ia64/hw_irq.h b/include/asm-ia64/hw_irq.h index 4eff7ff2da82..97ea3900d74a 100644 --- a/include/asm-ia64/hw_irq.h +++ b/include/asm-ia64/hw_irq.h | |||
@@ -92,14 +92,16 @@ extern __u8 isa_irq_to_vector_map[16]; | |||
92 | 92 | ||
93 | struct irq_cfg { | 93 | struct irq_cfg { |
94 | ia64_vector vector; | 94 | ia64_vector vector; |
95 | cpumask_t domain; | ||
95 | }; | 96 | }; |
96 | extern spinlock_t vector_lock; | 97 | extern spinlock_t vector_lock; |
97 | extern struct irq_cfg irq_cfg[NR_IRQS]; | 98 | extern struct irq_cfg irq_cfg[NR_IRQS]; |
99 | #define irq_to_domain(x) irq_cfg[(x)].domain | ||
98 | DECLARE_PER_CPU(int[IA64_NUM_VECTORS], vector_irq); | 100 | DECLARE_PER_CPU(int[IA64_NUM_VECTORS], vector_irq); |
99 | 101 | ||
100 | extern struct hw_interrupt_type irq_type_ia64_lsapic; /* CPU-internal interrupt controller */ | 102 | extern struct hw_interrupt_type irq_type_ia64_lsapic; /* CPU-internal interrupt controller */ |
101 | 103 | ||
102 | extern int bind_irq_vector(int irq, int vector); | 104 | extern int bind_irq_vector(int irq, int vector, cpumask_t domain); |
103 | extern int assign_irq_vector (int irq); /* allocate a free vector */ | 105 | extern int assign_irq_vector (int irq); /* allocate a free vector */ |
104 | extern void free_irq_vector (int vector); | 106 | extern void free_irq_vector (int vector); |
105 | extern int reserve_irq_vector (int vector); | 107 | extern int reserve_irq_vector (int vector); |
diff --git a/include/asm-ia64/irq.h b/include/asm-ia64/irq.h index 67221615e317..35b360b82e43 100644 --- a/include/asm-ia64/irq.h +++ b/include/asm-ia64/irq.h | |||
@@ -14,8 +14,13 @@ | |||
14 | #include <linux/types.h> | 14 | #include <linux/types.h> |
15 | #include <linux/cpumask.h> | 15 | #include <linux/cpumask.h> |
16 | 16 | ||
17 | #define NR_IRQS 256 | 17 | #define NR_VECTORS 256 |
18 | #define NR_IRQ_VECTORS NR_IRQS | 18 | |
19 | #if (NR_VECTORS + 32 * NR_CPUS) < 1024 | ||
20 | #define NR_IRQS (NR_VECTORS + 32 * NR_CPUS) | ||
21 | #else | ||
22 | #define NR_IRQS 1024 | ||
23 | #endif | ||
19 | 24 | ||
20 | static __inline__ int | 25 | static __inline__ int |
21 | irq_canonicalize (int irq) | 26 | irq_canonicalize (int irq) |