GNU Linux-libre 4.14.290-gnu1
[releases.git] / arch / metag / include / asm / irq.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_METAG_IRQ_H
3 #define __ASM_METAG_IRQ_H
4
5 #ifdef CONFIG_4KSTACKS
6 extern void irq_ctx_init(int cpu);
7 extern void irq_ctx_exit(int cpu);
8 # define __ARCH_HAS_DO_SOFTIRQ
9 #else
10 static inline void irq_ctx_init(int cpu)
11 {
12 }
13 static inline void irq_ctx_exit(int cpu)
14 {
15 }
16 #endif
17
18 void tbi_startup_interrupt(int);
19 void tbi_shutdown_interrupt(int);
20
21 struct pt_regs;
22
23 int tbisig_map(unsigned int hw);
24 extern void do_IRQ(int irq, struct pt_regs *regs);
25 extern void init_IRQ(void);
26
27 #ifdef CONFIG_METAG_SUSPEND_MEM
28 int traps_save_context(void);
29 int traps_restore_context(void);
30 #endif
31
32 #include <asm-generic/irq.h>
33
34 #ifdef CONFIG_HOTPLUG_CPU
35 extern void migrate_irqs(void);
36 #endif
37
38 #endif /* __ASM_METAG_IRQ_H */