6 static unsigned irq_mode() { return 0; }
9 static inline void update_one_shot(Unsigned64 wakeup);
12 // ------------------------------------------------------------------------
13 IMPLEMENTATION [arm && vcache]:
17 PRIVATE static inline NEEDS["mem_unit.h"]
19 Timer::kipclock_cache()
21 Mem_unit::clean_dcache((void *)&Kip::k()->clock);
24 // ------------------------------------------------------------------------
25 IMPLEMENTATION [arm && !vcache]:
29 Timer::kipclock_cache()
32 // ------------------------------------------------------------------------
40 IMPLEMENT inline NEEDS["kip.h"]
42 Timer::init_system_clock()
47 IMPLEMENT inline NEEDS["config.h", "globals.h", "kip.h", "watchdog.h", Timer::kipclock_cache]
49 Timer::update_system_clock(unsigned cpu)
53 Kip::k()->clock += Config::Scheduler_granularity;
59 IMPLEMENT inline NEEDS[Timer::update_one_shot, "config.h"]
61 Timer::update_timer(Unsigned64 wakeup)
63 if (Config::Scheduler_one_shot)
64 update_one_shot(wakeup);