summaryrefslogtreecommitdiff
path: root/src/kernel/arch/amd64/interrupts/isr.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/arch/amd64/interrupts/isr.c')
-rw-r--r--src/kernel/arch/amd64/interrupts/isr.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/kernel/arch/amd64/interrupts/isr.c b/src/kernel/arch/amd64/interrupts/isr.c
index bd560f5..71da27b 100644
--- a/src/kernel/arch/amd64/interrupts/isr.c
+++ b/src/kernel/arch/amd64/interrupts/isr.c
@@ -25,18 +25,17 @@ void isr_stage3(int interrupt, uint64_t *stackframe) {
if (interrupt == 0xe || interrupt == 0xd) stackframe++;
switch (interrupt) {
case 0x34:
- asm("nop" ::: "memory");
isr_test_interrupt_called = true;
return;
- case 0x21: // keyboard irq
- ps2_recv(port_in8(0x60));
- irq_eoi(1);
+ case IRQ_IBASE + IRQ_PS2:
+ ps2_irq();
+ irq_eoi(IRQ_PS2);
return;
- case 0x24: // COM1 irq
+ case IRQ_IBASE + IRQ_COM1:
serial_irq();
- irq_eoi(1);
+ irq_eoi(IRQ_COM1);
return;
default: