clock.h revision 208494
1/*- 2 * Kernel interface to machine-dependent clock driver. 3 * Garrett Wollman, September 1994. 4 * This file is in the public domain. 5 * 6 * $FreeBSD: head/sys/i386/include/clock.h 208494 2010-05-24 11:40:49Z mav $ 7 */ 8 9#ifndef _MACHINE_CLOCK_H_ 10#define _MACHINE_CLOCK_H_ 11 12#ifdef _KERNEL 13/* 14 * i386 to clock driver interface. 15 * XXX large parts of the driver and its interface are misplaced. 16 */ 17extern int clkintr_pending; 18extern u_int i8254_freq; 19extern int i8254_max_count; 20extern uint64_t tsc_freq; 21extern int tsc_is_broken; 22extern int tsc_is_invariant; 23 24void i8254_init(void); 25 26struct trapframe; 27 28int hardclockintr(struct trapframe *frame); 29int statclockintr(struct trapframe *frame); 30 31/* 32 * Driver to clock driver interface. 33 */ 34 35void startrtclock(void); 36void timer_restore(void); 37void init_TSC(void); 38void init_TSC_tc(void); 39 40#define HAS_TIMER_SPKR 1 41int timer_spkr_acquire(void); 42int timer_spkr_release(void); 43void timer_spkr_setfreq(int freq); 44 45#endif /* _KERNEL */ 46 47#endif /* !_MACHINE_CLOCK_H_ */ 48