From 4a844820866094ff7d57435a16b7c23a9126814d Mon Sep 17 00:00:00 2001 From: dzwdz Date: Wed, 3 Aug 2022 21:34:58 +0200 Subject: amd64: cleanup the irq code, #define the magic numbers --- src/kernel/arch/amd64/interrupts/isr.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'src/kernel/arch/amd64/interrupts/isr.c') 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: -- cgit v1.2.3