xref: /openbmc/linux/arch/alpha/kernel/irq_impl.h (revision 82c849eb)
1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
21da177e4SLinus Torvalds /*
31da177e4SLinus Torvalds  *	linux/arch/alpha/kernel/irq_impl.h
41da177e4SLinus Torvalds  *
51da177e4SLinus Torvalds  *	Copyright (C) 1995 Linus Torvalds
61da177e4SLinus Torvalds  *	Copyright (C) 1998, 2000 Richard Henderson
71da177e4SLinus Torvalds  *
81da177e4SLinus Torvalds  * This file contains declarations and inline functions for interfacing
91da177e4SLinus Torvalds  * with the IRQ handling routines in irq.c.
101da177e4SLinus Torvalds  */
111da177e4SLinus Torvalds 
121da177e4SLinus Torvalds #include <linux/interrupt.h>
131da177e4SLinus Torvalds #include <linux/irq.h>
141da177e4SLinus Torvalds #include <linux/profile.h>
151da177e4SLinus Torvalds 
161da177e4SLinus Torvalds 
171da177e4SLinus Torvalds #define RTC_IRQ    8
181da177e4SLinus Torvalds 
197ca56053SAl Viro extern void isa_device_interrupt(unsigned long);
203dbb8c62SAl Viro extern void isa_no_iack_sc_device_interrupt(unsigned long);
217ca56053SAl Viro extern void srm_device_interrupt(unsigned long);
227ca56053SAl Viro extern void pyxis_device_interrupt(unsigned long);
231da177e4SLinus Torvalds 
241da177e4SLinus Torvalds extern void init_srm_irqs(long, unsigned long);
251da177e4SLinus Torvalds extern void init_pyxis_irqs(unsigned long);
2682c849ebSafzal mohammed extern void init_rtc_irq(irq_handler_t  handler);
271da177e4SLinus Torvalds 
281da177e4SLinus Torvalds extern void common_init_isa_dma(void);
291da177e4SLinus Torvalds 
30ff53afe6SThomas Gleixner extern void i8259a_enable_irq(struct irq_data *d);
31ff53afe6SThomas Gleixner extern void i8259a_disable_irq(struct irq_data *d);
32ff53afe6SThomas Gleixner extern void i8259a_mask_and_ack_irq(struct irq_data *d);
3344377f62SThomas Gleixner extern struct irq_chip i8259a_irq_type;
341da177e4SLinus Torvalds extern void init_i8259a_irqs(void);
351da177e4SLinus Torvalds 
363dbb8c62SAl Viro extern void handle_irq(int irq);
37