]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - arch/arm/include/asm/irq.h
Merge branches 'for-4.4/upstream-fixes', 'for-4.5/async-suspend', 'for-4.5/container...
[mirror_ubuntu-artful-kernel.git] / arch / arm / include / asm / irq.h
CommitLineData
1da177e4
LT
1#ifndef __ASM_ARM_IRQ_H
2#define __ASM_ARM_IRQ_H
3
a2be01b1
RH
4#define NR_IRQS_LEGACY 16
5
6#ifndef CONFIG_SPARSE_IRQ
a09e64fb 7#include <mach/irqs.h>
a2be01b1
RH
8#else
9#define NR_IRQS NR_IRQS_LEGACY
10#endif
1da177e4
LT
11
12#ifndef irq_canonicalize
13#define irq_canonicalize(i) (i)
14#endif
15
1da177e4
LT
16/*
17 * Use this value to indicate lack of interrupt
18 * capability
19 */
20#ifndef NO_IRQ
21#define NO_IRQ ((unsigned int)(-1))
22#endif
23
431d2cd9
AP
24#ifndef __ASSEMBLY__
25struct irqaction;
aedceb2a 26struct pt_regs;
a054a811 27extern void migrate_irqs(void);
446616db
RK
28
29extern void asm_do_IRQ(unsigned int, struct pt_regs *);
a4841e39 30void handle_IRQ(unsigned int, struct pt_regs *);
446616db
RK
31void init_IRQ(void);
32
f36a3bb1
CM
33#ifdef CONFIG_MULTI_IRQ_HANDLER
34extern void (*handle_arch_irq)(struct pt_regs *);
35extern void set_handle_irq(void (*handle_irq)(struct pt_regs *));
36#endif
37
96f0e003
RK
38#ifdef CONFIG_SMP
39extern void arch_trigger_all_cpu_backtrace(bool);
40#define arch_trigger_all_cpu_backtrace(x) arch_trigger_all_cpu_backtrace(x)
41#endif
42
b4ff8389
BO
43static inline int nr_legacy_irqs(void)
44{
45 return NR_IRQS_LEGACY;
46}
47
1da177e4
LT
48#endif
49
431d2cd9
AP
50#endif
51