Handle ps2 keyboard, no APIC for now
This commit is contained in:
@ -10,7 +10,6 @@
|
||||
#include "bootinfo/bootinfo.h"
|
||||
#include "uacpi/uacpi.h"
|
||||
#include "uacpi/acpi.h"
|
||||
#include "apic.h"
|
||||
|
||||
struct acpi_madt *MADT = NULL;
|
||||
|
||||
@ -60,7 +59,7 @@ void acpi_init(void) {
|
||||
}
|
||||
|
||||
uint8_t acpi_remapirq(uint8_t irq) {
|
||||
uint64_t cur = (uint64_t)&MADT->entries;
|
||||
uint64_t cur = (uint64_t)(&MADT->entries);
|
||||
uint64_t end = cur + MADT->hdr.length;
|
||||
|
||||
while (cur < end) {
|
||||
@ -69,7 +68,8 @@ uint8_t acpi_remapirq(uint8_t irq) {
|
||||
if (ent->type == ACPI_MADT_ENTRY_TYPE_INTERRUPT_SOURCE_OVERRIDE) {
|
||||
struct acpi_madt_interrupt_source_override *override = (struct acpi_madt_interrupt_source_override *)ent;
|
||||
if (override->source == irq) {
|
||||
return override->gsi;
|
||||
irq = override->gsi;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user