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: src/sys/i386/include/clock.h,v 1.38.2.1 2002/11/02 04:41:50 iwasaki Exp $
7  * $DragonFly: src/sys/platform/vkernel/include/clock.h,v 1.2 2008/05/10 17:24:11 dillon Exp $
8  */
9 
10 #ifndef _MACHINE_CLOCK_H_
11 #define	_MACHINE_CLOCK_H_
12 
13 #ifdef _KERNEL
14 
15 #ifndef _SYS_TYPES_H_
16 #include <sys/types.h>
17 #endif
18 
19 /*
20  * i386 to clock driver interface.
21  * XXX large parts of the driver and its interface are misplaced.
22  */
23 extern int	adjkerntz;
24 extern int	disable_rtc_set;
25 extern u_int	timer_freq;
26 extern int	timer0_max_count;
27 extern int	tsc_present;
28 extern int64_t	tsc_frequency;
29 extern int	tsc_is_broken;
30 extern int	wall_cmos_clock;
31 #ifdef SMP /* APIC-IO */
32 extern int	apic_8254_intr;
33 #endif
34 
35 /*
36  * Driver to clock driver interface.
37  */
38 
39 int	rtcin (int val);
40 int	acquire_timer2 (int mode);
41 int	release_timer2 (void);
42 int	sysbeep (int pitch, int period);
43 void	timer_restore (void);
44 
45 #endif /* _KERNEL */
46 
47 #endif /* !_MACHINE_CLOCK_H_ */
48