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