Manual merge with Linus (conflict in drivers/input/misc/wistron_bnts.c)
[linux-2.6] / include / asm-frv / irq.h
1 /* irq.h: FRV IRQ definitions
2  *
3  * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved.
4  * Written by David Howells (dhowells@redhat.com)
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version
9  * 2 of the License, or (at your option) any later version.
10  */
11
12 #ifndef _ASM_IRQ_H_
13 #define _ASM_IRQ_H_
14
15 #include <linux/config.h>
16
17 /*
18  * the system has an on-CPU PIC and another PIC on the FPGA and other PICs on other peripherals,
19  * so we do some routing in irq-routing.[ch] to reduce the number of false-positives seen by
20  * drivers
21  */
22
23 /* this number is used when no interrupt has been assigned */
24 #define NO_IRQ                          (-1)
25
26 #define NR_IRQ_LOG2_ACTIONS_PER_GROUP   5
27 #define NR_IRQ_ACTIONS_PER_GROUP        (1 << NR_IRQ_LOG2_ACTIONS_PER_GROUP)
28 #define NR_IRQ_GROUPS                   4
29 #define NR_IRQS                         (NR_IRQ_ACTIONS_PER_GROUP * NR_IRQ_GROUPS)
30
31 /* probe returns a 32-bit IRQ mask:-/ */
32 #define MIN_PROBE_IRQ   (NR_IRQS - 32)
33
34 static inline int irq_canonicalize(int irq)
35 {
36         return irq;
37 }
38
39 extern void disable_irq_nosync(unsigned int irq);
40 extern void disable_irq(unsigned int irq);
41 extern void enable_irq(unsigned int irq);
42
43
44 #endif /* _ASM_IRQ_H_ */