u-boot/arch/x86/include/asm/interrupt.h
Bin Meng 6c5052716e x86: Rename CONFIG_SYS_NUM_IRQS to SYS_NUM_IRQS
CONFIG_SYS_NUM_IRQS is actually not something we can configure,
but an architecture defined number of ISA IRQs. Move it from
x86-common.h to asm/interrupt.h and rename it to SYS_NUM_IRQS.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
2015-11-13 06:46:16 -08:00

65 lines
1.1 KiB
C

/*
* (C) Copyright 2009
* Graeme Russ, graeme.russ@gmail.com
*
* (C) Copyright 2002
* Daniel Engström, Omicron Ceti AB, daniel@omicron.se
*
* SPDX-License-Identifier: GPL-2.0+
*/
#ifndef __ASM_INTERRUPT_H_
#define __ASM_INTERRUPT_H_ 1
#include <asm/types.h>
#define SYS_NUM_IRQS 16
/* Architecture defined exceptions */
enum x86_exception {
EXC_DE = 0,
EXC_DB,
EXC_NMI,
EXC_BP,
EXC_OF,
EXC_BR,
EXC_UD,
EXC_NM,
EXC_DF,
EXC_CSO,
EXC_TS,
EXC_NP,
EXC_SS,
EXC_GP,
EXC_PF,
EXC_MF = 16,
EXC_AC,
EXC_MC,
EXC_XM,
EXC_VE
};
/* arch/x86/cpu/interrupts.c */
void set_vector(u8 intnum, void *routine);
/* Architecture specific functions */
void mask_irq(int irq);
void unmask_irq(int irq);
void specific_eoi(int irq);
extern char exception_stack[];
/**
* configure_irq_trigger() - Configure IRQ triggering
*
* Switch the given interrupt to be level / edge triggered
*
* @param int_num legacy interrupt number (3-7, 9-15)
* @param is_level_triggered true for level triggered interrupt, false for
* edge triggered interrupt
*/
void configure_irq_trigger(int int_num, bool is_level_triggered);
void *x86_get_idt(void);
#endif