1
0
Fork 0
mirror of https://github.com/tailix/kernel.git synced 2024-10-30 12:03:52 -04:00
kernel/arch/timer.c
2017-11-06 04:21:18 +00:00

23 lines
482 B
C

#include "timer.h"
#include "logger.h"
#include "asm.h"
void timer_initialize(unsigned int frequency)
{
logger_info_from("timer", "Initialize timer.");
const unsigned int divisor = 1193180 / frequency;
const unsigned char l = divisor & 0xFF;
const unsigned char h = (divisor >> 8) & 0xFF;
outportb(0x43, 0x36);
outportb(0x40, l);
outportb(0x40, h);
}
void timer_register_handler(timer_handler_t handler)
{
hwint_register_handler(0, handler);
}