xref: /openbmc/linux/arch/alpha/kernel/irq_impl.h (revision 68198dca)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  *	linux/arch/alpha/kernel/irq_impl.h
4  *
5  *	Copyright (C) 1995 Linus Torvalds
6  *	Copyright (C) 1998, 2000 Richard Henderson
7  *
8  * This file contains declarations and inline functions for interfacing
9  * with the IRQ handling routines in irq.c.
10  */
11 
12 #include <linux/interrupt.h>
13 #include <linux/irq.h>
14 #include <linux/profile.h>
15 
16 
17 #define RTC_IRQ    8
18 
19 extern void isa_device_interrupt(unsigned long);
20 extern void isa_no_iack_sc_device_interrupt(unsigned long);
21 extern void srm_device_interrupt(unsigned long);
22 extern void pyxis_device_interrupt(unsigned long);
23 
24 extern struct irqaction timer_irqaction;
25 extern struct irqaction isa_cascade_irqaction;
26 extern struct irqaction timer_cascade_irqaction;
27 extern struct irqaction halt_switch_irqaction;
28 
29 extern void init_srm_irqs(long, unsigned long);
30 extern void init_pyxis_irqs(unsigned long);
31 extern void init_rtc_irq(void);
32 
33 extern void common_init_isa_dma(void);
34 
35 extern void i8259a_enable_irq(struct irq_data *d);
36 extern void i8259a_disable_irq(struct irq_data *d);
37 extern void i8259a_mask_and_ack_irq(struct irq_data *d);
38 extern struct irq_chip i8259a_irq_type;
39 extern void init_i8259a_irqs(void);
40 
41 extern void handle_irq(int irq);
42