xref: /linux/arch/microblaze/include/asm/irq.h (revision 7961386fe9596e6bf03d09948a73c5df9653325b)
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 */
48