nes-proj/cpu/x86
Jesus Sanchez-Palencia 3b01e04379 x86: Add a fake IRQ7 handler to avoid spurious interrupts
The 8259a PIC has a well known problem of generating flaky
IRQ7 interrupts. The correct solution is to always check
if an IRQ7 interrupt is real or not by probing the PIC's ISR
register. This check is only mandatory if the IRQ7 is actually
being used by the system. More importantly, the handler should
NEVER send and EOI if the interrupt was spurious.

This patch addresses this issue by implementing a fake empty
handler for this IRQ and, as stated, NOT sending the EOI.
2015-12-21 08:06:14 -02:00
..
drivers x86: Add APIs to 8259 PIC driver 2015-12-21 08:06:14 -02:00
cpu.c x86: Add a fake IRQ7 handler to avoid spurious interrupts 2015-12-21 08:06:14 -02:00
cpu.h x86: CPU Initialization 2015-12-21 08:06:14 -02:00
gdt.c x86: Initialize Global Descriptor Table 2015-12-21 08:06:14 -02:00
gdt.h x86: Initialize Global Descriptor Table 2015-12-21 08:06:14 -02:00
helpers.h x86: Add Real-Time Clock Driver 2015-12-21 08:06:14 -02:00
helpers.S x86: Add Real-Time Clock Driver 2015-12-21 08:06:14 -02:00
idt.c x86: Introduce interrupt.h 2015-12-21 08:06:14 -02:00
idt.h x86: Initialize Interrupt Descriptor Table 2015-12-21 08:06:14 -02:00
interrupt.h x86: Introduce interrupt.h 2015-12-21 08:06:14 -02:00
Makefile.x86 x86: Add pic_unmask_irq() helper 2015-12-21 08:06:14 -02:00
mtarch.c x86: Fix missing include warning due to memset usage 2015-12-21 08:06:14 -02:00
mtarch.h