clock.h revision 82971
1210311Sjmallett/* 2210311Sjmallett * Kernel interface to machine-dependent clock driver. 3210311Sjmallett * Garrett Wollman, September 1994. 4210311Sjmallett * This file is in the public domain. 5210311Sjmallett * 6210311Sjmallett * $FreeBSD: head/sys/i386/include/clock.h 82971 2001-09-04 16:02:06Z iwasaki $ 7210311Sjmallett */ 8210311Sjmallett 9210311Sjmallett#ifndef _MACHINE_CLOCK_H_ 10210311Sjmallett#define _MACHINE_CLOCK_H_ 11210311Sjmallett 12210311Sjmallett#ifdef _KERNEL 13210311Sjmallett/* 14210311Sjmallett * i386 to clock driver interface. 15210311Sjmallett * XXX large parts of the driver and its interface are misplaced. 16210311Sjmallett */ 17210311Sjmallettextern int adjkerntz; 18210311Sjmallettextern int disable_rtc_set; 19210311Sjmallettextern int statclock_disable; 20210311Sjmallettextern u_int timer_freq; 21210311Sjmallettextern int timer0_max_count; 22210311Sjmallettextern u_int tsc_freq; 23210311Sjmallettextern int tsc_is_broken; 24210311Sjmallettextern int wall_cmos_clock; 25210311Sjmallett#ifdef APIC_IO 26210311Sjmallettextern int apic_8254_intr; 27210311Sjmallett#endif 28210311Sjmallett 29210311Sjmallett/* 30210311Sjmallett * Driver to clock driver interface. 31210311Sjmallett */ 32210311Sjmallettstruct clockframe; 33210311Sjmallett 34210311Sjmallettint acquire_timer0 __P((int rate, 35210311Sjmallett void (*function)(struct clockframe *frame))); 36210311Sjmallettint acquire_timer2 __P((int mode)); 37210311Sjmallettint release_timer0 __P((void)); 38210311Sjmallettint release_timer2 __P((void)); 39210311Sjmallett#ifndef PC98 40210311Sjmallettint rtcin __P((int val)); 41210311Sjmallett#else 42210311Sjmallettint acquire_timer1 __P((int mode)); 43210311Sjmallettint release_timer1 __P((void)); 44210311Sjmallett#endif 45257324Sglebiusint sysbeep __P((int pitch, int period)); 46210311Sjmallettvoid timer_restore __P((void)); 47210311Sjmallett 48210311Sjmallett#endif /* _KERNEL */ 49210311Sjmallett 50210311Sjmallett#endif /* !_MACHINE_CLOCK_H_ */ 51210311Sjmallett