aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--i386/i386/apic.c4
-rw-r--r--i386/i386at/ioapic.c9
2 files changed, 3 insertions, 10 deletions
diff --git a/i386/i386/apic.c b/i386/i386/apic.c
index 891ce288..ff7ba3e2 100644
--- a/i386/i386/apic.c
+++ b/i386/i386/apic.c
@@ -304,7 +304,9 @@ lapic_enable(void)
/* Enable LAPIC to send or recieve IPI/SIPIs */
dummy = lapic->spurious_vector.r;
- lapic->spurious_vector.r = dummy | LAPIC_ENABLE;
+ lapic->spurious_vector.r = IOAPIC_SPURIOUS_BASE
+ | LAPIC_ENABLE_DIRECTED_EOI
+ | LAPIC_ENABLE;
lapic->error_status.r = 0;
diff --git a/i386/i386at/ioapic.c b/i386/i386at/ioapic.c
index d4269ef0..003690ed 100644
--- a/i386/i386at/ioapic.c
+++ b/i386/i386at/ioapic.c
@@ -333,15 +333,6 @@ ioapic_configure(void)
/* Start the IO APIC receiving interrupts */
lapic_enable();
- /* Enable IOAPIC processor focus */
- lapic->spurious_vector.r |= LAPIC_FOCUS;
-
- /* Enable directed EOI if applicable */
- if (has_irq_specific_eoi || lapic->version.r & LAPIC_HAS_DIRECTED_EOI) {
- has_irq_specific_eoi = 1;
- lapic->spurious_vector.r |= LAPIC_ENABLE_DIRECTED_EOI;
- }
-
/* Set one-shot timer */
lapic->divider_config.r = LAPIC_TIMER_DIVIDE_16;
lapic->lvt_timer.r = IOAPIC_INT_BASE;