1 /* SPDX-License-Identifier: GPL-2.0+ */
4 * Graeme Russ, graeme.russ@gmail.com
7 * Daniel Engström, Omicron Ceti AB, daniel@omicron.se
10 #ifndef __ASM_INTERRUPT_H_
11 #define __ASM_INTERRUPT_H_ 1
13 #include <asm/types.h>
15 #define SYS_NUM_IRQS 16
17 /* Architecture defined exceptions */
41 /* arch/x86/cpu/interrupts.c */
42 void set_vector(u8 intnum, void *routine);
44 /* Architecture specific functions */
45 void mask_irq(int irq);
46 void unmask_irq(int irq);
47 void specific_eoi(int irq);
49 extern char exception_stack[];
52 * configure_irq_trigger() - Configure IRQ triggering
54 * Switch the given interrupt to be level / edge triggered
56 * @param int_num legacy interrupt number (3-7, 9-15)
57 * @param is_level_triggered true for level triggered interrupt, false for
58 * edge triggered interrupt
60 void configure_irq_trigger(int int_num, bool is_level_triggered);
62 void *x86_get_idt(void);