|  | #ifndef _ASM_IA64_IRQ_H | 
|  | #define _ASM_IA64_IRQ_H | 
|  |  | 
|  | /* | 
|  | * Copyright (C) 1999-2000, 2002 Hewlett-Packard Co | 
|  | *	David Mosberger-Tang <davidm@hpl.hp.com> | 
|  | *	Stephane Eranian <eranian@hpl.hp.com> | 
|  | * | 
|  | * 11/24/98	S.Eranian 	updated TIMER_IRQ and irq_canonicalize | 
|  | * 01/20/99	S.Eranian	added keyboard interrupt | 
|  | * 02/29/00     D.Mosberger	moved most things into hw_irq.h | 
|  | */ | 
|  |  | 
|  | #include <linux/types.h> | 
|  | #include <linux/cpumask.h> | 
|  |  | 
|  | #define NR_VECTORS	256 | 
|  |  | 
|  | #if (NR_VECTORS + 32 * NR_CPUS) < 1024 | 
|  | #define NR_IRQS (NR_VECTORS + 32 * NR_CPUS) | 
|  | #else | 
|  | #define NR_IRQS 1024 | 
|  | #endif | 
|  |  | 
|  | static __inline__ int | 
|  | irq_canonicalize (int irq) | 
|  | { | 
|  | /* | 
|  | * We do the legacy thing here of pretending that irqs < 16 | 
|  | * are 8259 irqs.  This really shouldn't be necessary at all, | 
|  | * but we keep it here as serial.c still uses it... | 
|  | */ | 
|  | return ((irq == 2) ? 9 : irq); | 
|  | } | 
|  |  | 
|  | extern void set_irq_affinity_info (unsigned int irq, int dest, int redir); | 
|  | bool is_affinity_mask_valid(cpumask_t cpumask); | 
|  |  | 
|  | #define is_affinity_mask_valid is_affinity_mask_valid | 
|  |  | 
|  | #endif /* _ASM_IA64_IRQ_H */ |