diff options
-rw-r--r-- | kernel/drivers.c | 2 | ||||
-rw-r--r-- | kernel/drivers/pit.c | 9 |
2 files changed, 5 insertions, 6 deletions
diff --git a/kernel/drivers.c b/kernel/drivers.c index d2230e8..98bf1bd 100644 --- a/kernel/drivers.c +++ b/kernel/drivers.c @@ -9,7 +9,7 @@ void drivers_init(void) { - pit_set_divider(100); // 1ms + pit_set_divider(1193); // 1ms uart_init(); pci_init(); ata_init(); diff --git a/kernel/drivers/pit.c b/kernel/drivers/pit.c index d77df08..53a9263 100644 --- a/kernel/drivers/pit.c +++ b/kernel/drivers/pit.c @@ -22,9 +22,8 @@ uint16_t pit_read_divider(void) void pit_set_divider(uint16_t count) { (void)count; - // FIXME: broken on -O0 - // cli(); - // outb(CHAN_0, count & 0xFF); // low byte - // outb(CHAN_0, (count & 0xFF00) >> 8); // high byte - // sti(); + cli(); + outb(CHAN_0, count & 0xFF); // low byte + outb(CHAN_0, (count & 0xFF00) >> 8); // high byte + sti(); } |