]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
1da177e4 LT |
2 | #ifndef __ASM_ARM_IRQ_H |
3 | #define __ASM_ARM_IRQ_H | |
4 | ||
a2be01b1 RH |
5 | #define NR_IRQS_LEGACY 16 |
6 | ||
7 | #ifndef CONFIG_SPARSE_IRQ | |
a09e64fb | 8 | #include <mach/irqs.h> |
a2be01b1 RH |
9 | #else |
10 | #define NR_IRQS NR_IRQS_LEGACY | |
11 | #endif | |
1da177e4 LT |
12 | |
13 | #ifndef irq_canonicalize | |
14 | #define irq_canonicalize(i) (i) | |
15 | #endif | |
16 | ||
1da177e4 LT |
17 | /* |
18 | * Use this value to indicate lack of interrupt | |
19 | * capability | |
20 | */ | |
21 | #ifndef NO_IRQ | |
22 | #define NO_IRQ ((unsigned int)(-1)) | |
23 | #endif | |
24 | ||
431d2cd9 AP |
25 | #ifndef __ASSEMBLY__ |
26 | struct irqaction; | |
aedceb2a | 27 | struct pt_regs; |
446616db RK |
28 | |
29 | extern void asm_do_IRQ(unsigned int, struct pt_regs *); | |
a4841e39 | 30 | void handle_IRQ(unsigned int, struct pt_regs *); |
446616db RK |
31 | void init_IRQ(void); |
32 | ||
f36a3bb1 CM |
33 | #ifdef CONFIG_MULTI_IRQ_HANDLER |
34 | extern void (*handle_arch_irq)(struct pt_regs *); | |
35 | extern void set_handle_irq(void (*handle_irq)(struct pt_regs *)); | |
36 | #endif | |
37 | ||
96f0e003 | 38 | #ifdef CONFIG_SMP |
9a01c3ed CM |
39 | extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask, |
40 | bool exclude_self); | |
41 | #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace | |
96f0e003 RK |
42 | #endif |
43 | ||
b4ff8389 BO |
44 | static inline int nr_legacy_irqs(void) |
45 | { | |
46 | return NR_IRQS_LEGACY; | |
47 | } | |
48 | ||
1da177e4 LT |
49 | #endif |
50 | ||
431d2cd9 AP |
51 | #endif |
52 |