aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel/irq.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sparc/kernel/irq.h')
-rw-r--r--arch/sparc/kernel/irq.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/arch/sparc/kernel/irq.h b/arch/sparc/kernel/irq.h
new file mode 100644
index 000000000000..8254a86d97d0
--- /dev/null
+++ b/arch/sparc/kernel/irq.h
@@ -0,0 +1,48 @@
1#include <asm/btfixup.h>
2
3BTFIXUPDEF_CALL(void, disable_pil_irq, unsigned int)
4BTFIXUPDEF_CALL(void, enable_pil_irq, unsigned int)
5BTFIXUPDEF_CALL(void, clear_clock_irq, void)
6BTFIXUPDEF_CALL(void, clear_profile_irq, int)
7BTFIXUPDEF_CALL(void, load_profile_irq, int, unsigned int)
8
9static inline void disable_pil_irq(unsigned int irq)
10{
11 BTFIXUP_CALL(disable_pil_irq)(irq);
12}
13
14static inline void enable_pil_irq(unsigned int irq)
15{
16 BTFIXUP_CALL(enable_pil_irq)(irq);
17}
18
19static inline void clear_clock_irq(void)
20{
21 BTFIXUP_CALL(clear_clock_irq)();
22}
23
24static inline void clear_profile_irq(int irq)
25{
26 BTFIXUP_CALL(clear_profile_irq)(irq);
27}
28
29static inline void load_profile_irq(int cpu, int limit)
30{
31 BTFIXUP_CALL(load_profile_irq)(cpu, limit);
32}
33
34extern void (*sparc_init_timers)(irq_handler_t lvl10_irq);
35
36extern void claim_ticker14(irq_handler_t irq_handler,
37 int irq,
38 unsigned int timeout);
39
40#ifdef CONFIG_SMP
41BTFIXUPDEF_CALL(void, set_cpu_int, int, int)
42BTFIXUPDEF_CALL(void, clear_cpu_int, int, int)
43BTFIXUPDEF_CALL(void, set_irq_udt, int)
44
45#define set_cpu_int(cpu,level) BTFIXUP_CALL(set_cpu_int)(cpu,level)
46#define clear_cpu_int(cpu,level) BTFIXUP_CALL(clear_cpu_int)(cpu,level)
47#define set_irq_udt(cpu) BTFIXUP_CALL(set_irq_udt)(cpu)
48#endif