Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze
[sfrench/cifs-2.6.git] / arch / microblaze / include / asm / irq.h
1 /*
2  * Copyright (C) 2006 Atmark Techno, Inc.
3  *
4  * This file is subject to the terms and conditions of the GNU General Public
5  * License. See the file "COPYING" in the main directory of this archive
6  * for more details.
7  */
8
9 #ifndef _ASM_MICROBLAZE_IRQ_H
10 #define _ASM_MICROBLAZE_IRQ_H
11
12 #define NR_IRQS 32
13
14 #include <linux/interrupt.h>
15
16 extern unsigned int nr_irq;
17
18 #define NO_IRQ (-1)
19
20 static inline int irq_canonicalize(int irq)
21 {
22         return irq;
23 }
24
25 struct pt_regs;
26 extern void do_IRQ(struct pt_regs *regs);
27
28 /* irq_of_parse_and_map - Parse and Map an interrupt into linux virq space
29  * @device: Device node of the device whose interrupt is to be mapped
30  * @index: Index of the interrupt to map
31  *
32  * This function is a wrapper that chains of_irq_map_one() and
33  * irq_create_of_mapping() to make things easier to callers
34  */
35 struct device_node;
36 extern unsigned int irq_of_parse_and_map(struct device_node *dev, int index);
37
38 /** FIXME - not implement
39  * irq_dispose_mapping - Unmap an interrupt
40  * @virq: linux virq number of the interrupt to unmap
41  */
42 static inline void irq_dispose_mapping(unsigned int virq)
43 {
44         return;
45 }
46
47 #endif /* _ASM_MICROBLAZE_IRQ_H */