summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/src/ACPIFactoryInterface.cc
diff options
context:
space:
mode:
authorAmlal <amlal@nekernel.org>2025-08-16 00:03:56 +0200
committerAmlal <amlal@nekernel.org>2025-08-16 00:03:56 +0200
commitb301047903b79560dce69085fc271a653a1eb4b6 (patch)
treef41f723659c8926e38182fbe062746d821ab487e /dev/kernel/src/ACPIFactoryInterface.cc
parent90acc37fd62f7c18c5b19fae2558f042adb4ded2 (diff)
feat: ACPI: Better error handling.v0.0.4-release
Signed-off-by: Amlal <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel/src/ACPIFactoryInterface.cc')
-rw-r--r--dev/kernel/src/ACPIFactoryInterface.cc9
1 files changed, 4 insertions, 5 deletions
diff --git a/dev/kernel/src/ACPIFactoryInterface.cc b/dev/kernel/src/ACPIFactoryInterface.cc
index 8cc11cad..01f30500 100644
--- a/dev/kernel/src/ACPIFactoryInterface.cc
+++ b/dev/kernel/src/ACPIFactoryInterface.cc
@@ -10,12 +10,11 @@
#include <modules/ACPI/ACPIFactoryInterface.h>
namespace Kernel {
-constexpr STATIC const auto kMinACPIVer = 1;
+constexpr STATIC const auto kMinACPIVer = 1U;
/// @brief Finds a descriptor table inside ACPI XSDT.
ErrorOr<voidPtr> ACPIFactoryInterface::Find(const Char* signature) {
- MUST_PASS(this->fRsdp);
-
+ if (this->fRsdp) return ErrorOr<voidPtr>{kErrorInvalidData};
if (!signature) return ErrorOr<voidPtr>{-kErrorInvalidData};
if (*signature == 0) return ErrorOr<voidPtr>{-kErrorInvalidData};
@@ -33,7 +32,7 @@ ErrorOr<voidPtr> ACPIFactoryInterface::Find(const Char* signature) {
if (num < 1) {
/// stop here, we should have entries...
ke_panic(RUNTIME_CHECK_ACPI);
- return ErrorOr<voidPtr>{-1};
+ return ErrorOr<voidPtr>{-kErrorInvalidData};
}
this->fEntries = num;
@@ -62,7 +61,7 @@ ErrorOr<voidPtr> ACPIFactoryInterface::Find(const Char* signature) {
}
}
- return ErrorOr<voidPtr>{-1};
+ return ErrorOr<voidPtr>{-kErrorInvalidData};
}
/***