]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - sys/i386/include/clock.h
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / sys / i386 / include / clock.h
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      clkintr_pending;
18 extern u_int    i8254_freq;
19 extern int      i8254_max_count;
20 extern uint64_t tsc_freq;
21 extern int      tsc_is_invariant;
22 extern int      tsc_perf_stat;
23
24 void    i8254_init(void);
25
26 /*
27  * Driver to clock driver interface.
28  */
29
30 void    startrtclock(void);
31 void    timer_restore(void);
32 void    init_TSC(void);
33
34 #define HAS_TIMER_SPKR 1
35 int     timer_spkr_acquire(void);
36 int     timer_spkr_release(void);
37 void    timer_spkr_setfreq(int freq);
38
39 #endif /* _KERNEL */
40
41 #endif /* !_MACHINE_CLOCK_H_ */