diff options
author | Anton Kling <anton@kling.gg> | 2024-07-03 18:30:51 +0200 |
---|---|---|
committer | Anton Kling <anton@kling.gg> | 2024-07-03 18:30:51 +0200 |
commit | 4e7918753175dbd8fc38bc7c5b176517e1dbef2f (patch) | |
tree | 723b3b3503d7502f3ce5338aeb6964cb5fa4c246 /kernel/drivers/pit.c | |
parent | 658c4e9645bf46268ed13bf5ef76d0ba60a347b9 (diff) |
Kernel/Time: Improve time keeping
This makes use of TSC and now provides a file system interface for
userland programs to change the system time.
Diffstat (limited to 'kernel/drivers/pit.c')
-rw-r--r-- | kernel/drivers/pit.c | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/kernel/drivers/pit.c b/kernel/drivers/pit.c index ac4e555..70dc0f9 100644 --- a/kernel/drivers/pit.c +++ b/kernel/drivers/pit.c @@ -9,11 +9,6 @@ u32 pit_counter = 0; u32 switch_counter = 0; u16 hertz; -u64 cpu_mhz = 0; -u64 pit_num_ms(void) { - return (get_tsc()) / (cpu_mhz * 1000); -} - u16 read_pit_count(void) { u16 count = 0; @@ -26,8 +21,6 @@ u16 read_pit_count(void) { } void set_pit_count(u16 _hertz) { - cpu_mhz = get_hz() / 10000; - hertz = _hertz; u16 divisor = 1193180 / hertz; @@ -53,13 +46,6 @@ u64 last_tsc = 0; extern int is_switching_tasks; void int_clock(reg_t *regs) { - u64 current_tsc = get_tsc(); - - u64 delta = (current_tsc - last_tsc) / (cpu_mhz * 1000); - - clock_num_ms_ticks += delta; - - last_tsc = current_tsc; switch_counter++; if (clock_num_ms_ticks - last_flush > 50) { |