From e90b72ec3082588b296956730bd2930cf8d5d671 Mon Sep 17 00:00:00 2001 From: Richard Qin Date: Fri, 10 Jul 2026 11:31:46 +0800 Subject: refactor: promote new architecture to repository root Archive the deprecated implementation under lume-legacy, make the new kernel the default root-level build, and update repository entry points without changing kernel behavior. --- src/kernel/timer.cc | 66 ----------------------------------------------------- 1 file changed, 66 deletions(-) delete mode 100644 src/kernel/timer.cc (limited to 'src/kernel/timer.cc') diff --git a/src/kernel/timer.cc b/src/kernel/timer.cc deleted file mode 100644 index fc02f27..0000000 --- a/src/kernel/timer.cc +++ /dev/null @@ -1,66 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (C) 2026 Richard QIn - */ -#include "common/types.h" -#include "kernel/config.h" -#include "kernel/spinlock.h" -#include "kernel/proc.h" -#include "kernel/sbi.h" - -#define INTERVAL 1000000 - -namespace Timer -{ - uint64 ticks; - Spinlock tickslock; - - uint64 get_time() - { - uint64 time; - asm volatile("rdtime %0" : "=r"(time)); - return time; - } - - void set_next_trigger() - { - SBI::set_timer(get_time() + INTERVAL); - } - - void init() - { - set_next_trigger(); - - uint64 sie; - asm volatile("csrr %0, sie" : "=r"(sie)); - sie |= (1L << 5); - asm volatile("csrw sie, %0" : : "r"(sie)); - } - - void tick() - { - tickslock.acquire(); - ticks++; - ProcManager::wakeup(&ticks); - tickslock.release(); - set_next_trigger(); - } - - uint64 get_ticks() - { - tickslock.acquire(); - uint64 t = ticks; - tickslock.release(); - return t; - } - - Spinlock *get_lock() - { - return &tickslock; - } - - void *get_tick_chan() - { - return &ticks; - } -} \ No newline at end of file -- cgit v1.2.3