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