Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | #ifndef _ASM_IA64_IRQ_H |
| 2 | #define _ASM_IA64_IRQ_H |
| 3 | |
| 4 | /* |
| 5 | * Copyright (C) 1999-2000, 2002 Hewlett-Packard Co |
| 6 | * David Mosberger-Tang <davidm@hpl.hp.com> |
| 7 | * Stephane Eranian <eranian@hpl.hp.com> |
| 8 | * |
| 9 | * 11/24/98 S.Eranian updated TIMER_IRQ and irq_canonicalize |
| 10 | * 01/20/99 S.Eranian added keyboard interrupt |
| 11 | * 02/29/00 D.Mosberger moved most things into hw_irq.h |
| 12 | */ |
| 13 | |
John Keller | 25d6157 | 2007-05-10 22:42:44 -0700 | [diff] [blame] | 14 | #include <linux/types.h> |
| 15 | #include <linux/cpumask.h> |
| 16 | |
Yasuaki Ishimatsu | 4994be1 | 2007-07-17 21:22:33 +0900 | [diff] [blame] | 17 | #define NR_VECTORS 256 |
| 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 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 24 | |
| 25 | static __inline__ int |
| 26 | irq_canonicalize (int irq) |
| 27 | { |
| 28 | /* |
| 29 | * We do the legacy thing here of pretending that irqs < 16 |
| 30 | * are 8259 irqs. This really shouldn't be necessary at all, |
| 31 | * but we keep it here as serial.c still uses it... |
| 32 | */ |
| 33 | return ((irq == 2) ? 9 : irq); |
| 34 | } |
| 35 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 36 | extern void set_irq_affinity_info (unsigned int irq, int dest, int redir); |
John Keller | 25d6157 | 2007-05-10 22:42:44 -0700 | [diff] [blame] | 37 | bool is_affinity_mask_valid(cpumask_t cpumask); |
| 38 | |
| 39 | #define is_affinity_mask_valid is_affinity_mask_valid |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 40 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 41 | #endif /* _ASM_IA64_IRQ_H */ |