diff options
Diffstat (limited to 'kernel/interrupts.c')
| -rw-r--r-- | kernel/interrupts.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/kernel/interrupts.c b/kernel/interrupts.c index 94eda2e..10537f7 100644 --- a/kernel/interrupts.c +++ b/kernel/interrupts.c @@ -1,5 +1,6 @@ #include "kernel.h" #include "log.h" +#include "e1000.h" #include "asm_int.h" #include "asm_pit.h" #include "driver/mouse.h" @@ -77,6 +78,11 @@ uint32_t interrupt_handler(uint32_t esp, uint32_t irq) task_syscall(stack[11],stack[8],stack[10],stack[9]); //eax,ebx,ecx,edx break; + case INTERRUPT_E1000: + klog("e1"); + e1000_irq(INTERRUPT_E1000); + break; + case INTERRUPT_APIC_TIMER: case INTERRUPT_IPI: esp=scheduler_run(esp,0); @@ -149,6 +155,9 @@ void interrupts_init(uint16_t sel) // Mouse (IOAPIC) int_install_ir(0x92, 0b10001110, 0x08,&int146); + // E1000 + int_install_ir(0x93, 0b10001110, 0x08,&int147); + // APIC Timer (LAPIC) int_install_ir(0x8C, 0b10001110, 0x08,&int140); |
