summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/apicvar.h
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2010-03-29 19:13:34 +0000
committerjhb <jhb@FreeBSD.org>2010-03-29 19:13:34 +0000
commitf3f4fff664d11e6372ad59b8fc307ab0244a8f71 (patch)
tree6f6f6806b0f1caeb147f69e12a3fa672cec7b4b5 /sys/amd64/include/apicvar.h
parent78907598c04661c36428e3f5b02ee6a80af4aac5 (diff)
downloadFreeBSD-src-f3f4fff664d11e6372ad59b8fc307ab0244a8f71.zip
FreeBSD-src-f3f4fff664d11e6372ad59b8fc307ab0244a8f71.tar.gz
Add a handler for the local APIC error interrupt. For now it just prints
out the current value of the local APIC error register when the interrupt fires. MFC after: 1 week
Diffstat (limited to 'sys/amd64/include/apicvar.h')
-rw-r--r--sys/amd64/include/apicvar.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/amd64/include/apicvar.h b/sys/amd64/include/apicvar.h
index 110ce81..91bba99 100644
--- a/sys/amd64/include/apicvar.h
+++ b/sys/amd64/include/apicvar.h
@@ -179,7 +179,8 @@ struct apic_enumerator {
inthand_t
IDTVEC(apic_isr1), IDTVEC(apic_isr2), IDTVEC(apic_isr3),
IDTVEC(apic_isr4), IDTVEC(apic_isr5), IDTVEC(apic_isr6),
- IDTVEC(apic_isr7), IDTVEC(spuriousint), IDTVEC(timerint);
+ IDTVEC(apic_isr7), IDTVEC(errorint), IDTVEC(spuriousint),
+ IDTVEC(timerint);
extern vm_paddr_t lapic_paddr;
extern int apic_cpuids[];
@@ -211,13 +212,13 @@ void lapic_disable_pmc(void);
void lapic_dump(const char *str);
int lapic_enable_pmc(void);
void lapic_eoi(void);
-u_int lapic_error(void);
int lapic_id(void);
void lapic_init(vm_paddr_t addr);
int lapic_intr_pending(u_int vector);
void lapic_ipi_raw(register_t icrlo, u_int dest);
void lapic_ipi_vectored(u_int vector, int dest);
int lapic_ipi_wait(int delay);
+void lapic_handle_error(void);
void lapic_handle_intr(int vector, struct trapframe *frame);
void lapic_handle_timer(struct trapframe *frame);
void lapic_reenable_pmc(void);
OpenPOWER on IntegriCloud