diff options
-rw-r--r-- | kernel/drivers/acpi.c | 6 | ||||
-rwxr-xr-x | run | 3 |
2 files changed, 6 insertions, 3 deletions
diff --git a/kernel/drivers/acpi.c b/kernel/drivers/acpi.c index e853a6f..0db4522 100644 --- a/kernel/drivers/acpi.c +++ b/kernel/drivers/acpi.c @@ -83,12 +83,14 @@ void hpet_install(int period) struct hpet_registers *r = (struct hpet_registers *)hpet->address.phys; printf("HPET tick period: %dns\n", HPET_MAX_PERIOD / r->tick_period); if ((r->timer0 & hpet_periodic_support) == hpet_periodic_support) { - r->config |= hpet_enable; - r->config |= hpet_legacy_replacement; r->timer0 |= hpet_periodic | hpet_set_accumulator | hpet_enable_timer; + r->config |= hpet_legacy_replacement; + r->config |= hpet_enable; assert(r->tick_period + period < HPET_MAX_PERIOD); r->timer_comparator0 = r->tick_period + period; r->timer_comparator0 = period; + } else { + hpet = NULL; } } else { hpet = NULL; @@ -9,8 +9,9 @@ mode="${1}" no_ask="${2}" network="rtl8139" +# TODO: Support q35 chipset ('-machine q35') - loops in ide_wait qemu_with_flags() { - SDL_VIDEO_X11_DGAMOUSE=0 qemu-system-i386 -no-reboot -vga std -rtc base=localtime -m 256M -smp 4 -net nic,model=${network},macaddr=42:42:42:42:42:42 -net user "$@" + SDL_VIDEO_X11_DGAMOUSE=0 qemu-system-i386 -cpu max -no-reboot -vga std -rtc base=localtime -m 256M -smp 4 -net nic,model=${network},macaddr=42:42:42:42:42:42 -net user "$@" } make_cross() { |