xref: /dflybsd-src/sys/platform/vkernel64/include/clock.h (revision 5a81b19fbd3150677df0f28d6fe44cfe071533d0)
1da673940SJordan Gordeev /*
2da673940SJordan Gordeev  * Kernel interface to machine-dependent clock driver.
3da673940SJordan Gordeev  * Garrett Wollman, September 1994.
4da673940SJordan Gordeev  * This file is in the public domain.
5da673940SJordan Gordeev  *
6da673940SJordan Gordeev  * $FreeBSD: src/sys/i386/include/clock.h,v 1.38.2.1 2002/11/02 04:41:50 iwasaki Exp $
7da673940SJordan Gordeev  */
8da673940SJordan Gordeev 
9da673940SJordan Gordeev #ifndef _MACHINE_CLOCK_H_
10da673940SJordan Gordeev #define	_MACHINE_CLOCK_H_
11da673940SJordan Gordeev 
12da673940SJordan Gordeev #ifdef _KERNEL
13da673940SJordan Gordeev 
14da673940SJordan Gordeev #ifndef _SYS_TYPES_H_
15da673940SJordan Gordeev #include <sys/types.h>
16da673940SJordan Gordeev #endif
17da673940SJordan Gordeev 
18da673940SJordan Gordeev /*
19da673940SJordan Gordeev  * i386 to clock driver interface.
20da673940SJordan Gordeev  * XXX large parts of the driver and its interface are misplaced.
21da673940SJordan Gordeev  */
22da673940SJordan Gordeev extern int	adjkerntz;
23da673940SJordan Gordeev extern int	disable_rtc_set;
24da673940SJordan Gordeev extern u_int	timer_freq;
25da673940SJordan Gordeev extern int	timer0_max_count;
26da673940SJordan Gordeev extern int	tsc_present;
27*5a81b19fSSepherosa Ziehau extern int	tsc_invariant;
28da673940SJordan Gordeev extern int64_t	tsc_frequency;
29da673940SJordan Gordeev extern int	tsc_is_broken;
30da673940SJordan Gordeev extern int	wall_cmos_clock;
31da673940SJordan Gordeev extern int	apic_8254_intr;
32da673940SJordan Gordeev 
33da673940SJordan Gordeev /*
34da673940SJordan Gordeev  * Driver to clock driver interface.
35da673940SJordan Gordeev  */
36da673940SJordan Gordeev 
37da673940SJordan Gordeev int	rtcin (int val);
38da673940SJordan Gordeev int	acquire_timer2 (int mode);
39da673940SJordan Gordeev int	release_timer2 (void);
40da673940SJordan Gordeev int	sysbeep (int pitch, int period);
41da673940SJordan Gordeev void	timer_restore (void);
42da673940SJordan Gordeev 
43da673940SJordan Gordeev #endif /* _KERNEL */
44da673940SJordan Gordeev 
45da673940SJordan Gordeev #endif /* !_MACHINE_CLOCK_H_ */
46