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 statclock_disable; 20 extern u_int timer_freq; 21 extern int timer0_max_count; 22 extern u_int tsc_freq; 23 extern int tsc_is_broken; 24 extern int wall_cmos_clock; 25 #ifdef APIC_IO 26 extern int apic_8254_intr; 27 #endif 28 29 /* 30 * Driver to clock driver interface. 31 */ 32 struct clockframe; 33 34 int acquire_timer0 __P((int rate, 35 void (*function)(struct clockframe *frame))); 36 int acquire_timer2 __P((int mode)); 37 int release_timer0 __P((void)); 38 int release_timer2 __P((void)); 39 #ifndef PC98 40 int rtcin __P((int val)); 41 #else 42 int acquire_timer1 __P((int mode)); 43 int release_timer1 __P((void)); 44 #endif 45 int sysbeep __P((int pitch, int period)); 46 void timer_restore __P((void)); 47 48 #endif /* _KERNEL */ 49 50 #endif /* !_MACHINE_CLOCK_H_ */ 51