summaryrefslogtreecommitdiff
path: root/sys/acpi/acpi.c
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-11-17 15:21:32 -0500
committerIan Moffett <ian@osmora.org>2025-11-17 15:21:32 -0500
commit4c961e20744579a2ba8c4de7ad1e7ecb22702f09 (patch)
treed095809e15553025d70d8cb49803d72d39ae1fde /sys/acpi/acpi.c
parent2998842b39d42faa6d26cb592ee2f5203c41516e (diff)
kern: dev: Add HPET timer driver
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys/acpi/acpi.c')
-rw-r--r--sys/acpi/acpi.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/acpi/acpi.c b/sys/acpi/acpi.c
index a521e12..f60435b 100644
--- a/sys/acpi/acpi.c
+++ b/sys/acpi/acpi.c
@@ -33,6 +33,7 @@
#include <os/trace.h>
#include <acpi/acpi.h>
#include <acpi/tables.h>
+#include <dev/clkdev/hpet.h>
#include <vm/vm.h>
#include <lib/limine.h>
#include <lib/string.h>
@@ -113,6 +114,8 @@ acpi_query(const char *s)
void
acpi_init(void)
{
+ int error;
+
rsdp_resp = rsdp_req.response;
if (__unlikely(rsdp_resp == NULL)) {
panic("acpi: could not obtain rsdp\n");
@@ -138,4 +141,10 @@ acpi_init(void)
}
dtrace("OK\n");
+ error = hpet_init();
+#if defined(__x86_64__)
+ if (error != 0) {
+ panic("acpi: require HPET on RV7/x86_64\n");
+ }
+#endif /* __x86_64__ */
}