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$ 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 */ 17 extern int adjkerntz; 18 extern int disable_rtc_set; 19 extern int pscnt; 20 extern int psdiv; 21 extern int statclock_disable; 22 extern u_int timer_freq; 23 extern int timer0_max_count; 24 extern uint64_t tsc_freq; 25 extern int tsc_is_broken; 26 extern int wall_cmos_clock; 27 28 /* 29 * Driver to clock driver interface. 30 */ 31 struct clockframe; 32 33 int acquire_timer0(int rate, void (*function)(struct clockframe *frame)); 34 int acquire_timer2(int mode); 35 int release_timer0(void); 36 int release_timer2(void); 37 int rtcin(int val); 38 int sysbeep(int pitch, int period); 39 void init_TSC(void); 40 41 #endif /* _KERNEL */ 42 43 #endif /* !_MACHINE_CLOCK_H_ */ 44