Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
[sfrench/cifs-2.6.git] / arch / alpha / kernel / irq_impl.h
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);