clock.h revision 302408
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: stable/11/sys/amd64/include/clock.h 263008 2014-03-11 10:20:42Z royger $
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 */
17extern int	clkintr_pending;
18extern u_int	i8254_freq;
19extern int	i8254_max_count;
20extern uint64_t	tsc_freq;
21extern int	tsc_is_invariant;
22extern int	tsc_perf_stat;
23#ifdef SMP
24extern int	smp_tsc;
25#endif
26
27void	i8254_init(void);
28void	i8254_delay(int);
29void	clock_init(void);
30
31/*
32 * Driver to clock driver interface.
33 */
34
35void	startrtclock(void);
36void	init_TSC(void);
37
38#define	HAS_TIMER_SPKR 1
39int	timer_spkr_acquire(void);
40int	timer_spkr_release(void);
41void	timer_spkr_setfreq(int freq);
42
43#endif /* _KERNEL */
44
45#endif /* !_MACHINE_CLOCK_H_ */
46