X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/05b7549a0f980efa33265a091a5174a78851ce05..9a7a9c079d0ab0366673beff73ffa710fe3b76c8:/lunaix-os/hal/acpi/parser/madt_parser.c diff --git a/lunaix-os/hal/acpi/parser/madt_parser.c b/lunaix-os/hal/acpi/parser/madt_parser.c index baa866c..7510d40 100644 --- a/lunaix-os/hal/acpi/parser/madt_parser.c +++ b/lunaix-os/hal/acpi/parser/madt_parser.c @@ -1,5 +1,5 @@ -#include "madt_parser.h" -#include +#include "parser.h" +#include void madt_parse(acpi_madt_t* madt, acpi_context* toc) @@ -11,9 +11,8 @@ madt_parse(acpi_madt_t* madt, acpi_context* toc) uintptr_t ics_end = (uintptr_t)madt + madt->header.length; // Cosidering only one IOAPIC present (max 24 pins) - // FIXME: use hash table instead toc->madt.irq_exception = - (acpi_intso_t*)lxcalloc(24, sizeof(acpi_intso_t*)); + (acpi_intso_t**)vcalloc(24, sizeof(acpi_intso_t*)); size_t so_idx = 0; while (ics_start < ics_end) { @@ -25,8 +24,7 @@ madt_parse(acpi_madt_t* madt, acpi_context* toc) case ACPI_MADT_IOAPIC: toc->madt.ioapic = (acpi_ioapic_t*)entry; break; - case ACPI_MADT_INTSO: - { + case ACPI_MADT_INTSO: { acpi_intso_t* intso_tbl = (acpi_intso_t*)entry; toc->madt.irq_exception[intso_tbl->source] = intso_tbl; break;