aboutsummaryrefslogtreecommitdiff
path: root/i386/i386at/model_dep.c
diff options
context:
space:
mode:
authorDamien Zammit <damien@zamaudio.com>2024-02-07 05:02:15 +0000
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2024-02-08 00:27:18 +0100
commitcaa07fdb903c6d533ce6dad1a66907d862e162ad (patch)
tree923709e5ea823d461f3a53433f0cdd21c9cabf9f /i386/i386at/model_dep.c
parent69477710c88420603f32e84511d9adc2923d0503 (diff)
downloadgnumach-caa07fdb903c6d533ce6dad1a66907d862e162ad.tar.gz
gnumach-caa07fdb903c6d533ce6dad1a66907d862e162ad.tar.bz2
gnumach-caa07fdb903c6d533ce6dad1a66907d862e162ad.zip
Add HPET timer for small accurate delays
TESTED: This works in qemu correctly TESTED: This works on an AMD board with ACPI v2.0 correctly Message-ID: <20240207050158.1640853-3-damien@zamaudio.com>
Diffstat (limited to 'i386/i386at/model_dep.c')
-rw-r--r--i386/i386at/model_dep.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/i386/i386at/model_dep.c b/i386/i386at/model_dep.c
index 173b99f5..789271fd 100644
--- a/i386/i386at/model_dep.c
+++ b/i386/i386at/model_dep.c
@@ -221,6 +221,7 @@ void machine_init(void)
*/
/* FIXME: this may not allocate from below 1MB, if within first 16MB */
apboot_addr = vm_page_to_pa(vm_page_grab_contig(PAGE_SIZE, VM_PAGE_SEL_DMA));
+ apboot_addr = 0x3000;
assert (apboot_addr < 0x100000);
/*
@@ -229,6 +230,11 @@ void machine_init(void)
*/
gdt_descr_tmp.linear_base += apboot_addr;
apboot_jmp_offset += apboot_addr;
+
+ /*
+ * Initialize the HPET
+ */
+ hpet_init();
#endif
}