diff options
Diffstat (limited to 'Kernel')
| -rw-r--r-- | Kernel/HALKit/AMD64/HalACPIFactoryInterface.cxx | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/Kernel/HALKit/AMD64/HalACPIFactoryInterface.cxx b/Kernel/HALKit/AMD64/HalACPIFactoryInterface.cxx index adeeb10d..7bdec117 100644 --- a/Kernel/HALKit/AMD64/HalACPIFactoryInterface.cxx +++ b/Kernel/HALKit/AMD64/HalACPIFactoryInterface.cxx @@ -63,17 +63,15 @@ namespace NewOS MUST_PASS(fRsdp); if (!signature) - return ErrorOr<voidPtr>{-2}; + return ErrorOr<voidPtr>{-1}; if (*signature == 0) - return ErrorOr<voidPtr>{-3}; + return ErrorOr<voidPtr>{-1}; RSDP* rsdPtr = reinterpret_cast<RSDP*>(this->fRsdp); if (rsdPtr->Revision <= 1) - { - return ErrorOr<voidPtr>{-4}; - } + return ErrorOr<voidPtr>{-1}; /// FIXME RSDT* xsdt = (RSDT*)(rsdPtr->RsdtAddress); @@ -82,15 +80,16 @@ namespace NewOS if (num < 1) { - kcout << "ACPI: No entries." << endl; - return ErrorOr<voidPtr>{-6}; + /// stop here, we should have entries... + ke_stop(RUNTIME_CHECK_ACPI); + return ErrorOr<voidPtr>{-1}; } this->fEntries = num; kcout << "ACPI: Number of entries: " << number(this->fEntries) << endl; kcout << "ACPI: Revision: " << number(xsdt->Revision) << endl; - kcout << "ACPI: XSDT: " << xsdt->Signature << endl; + kcout << "ACPI: Signature: " << xsdt->Signature << endl; kcout << "ACPI: Address of XSDT: " << hex_number((UIntPtr)xsdt) << endl; const short cAcpiSignatureLength = 4; @@ -111,7 +110,7 @@ namespace NewOS } } - return ErrorOr<voidPtr>{nullptr}; + return ErrorOr<voidPtr>{-1}; } /*** |
