1139790Simp/*- 22858Swollman * Kernel interface to machine-dependent clock driver. 32858Swollman * Garrett Wollman, September 1994. 42858Swollman * This file is in the public domain. 512533Swollman * 650477Speter * $FreeBSD: releng/10.3/sys/i386/include/clock.h 221703 2011-05-09 17:34:00Z jkim $ 72858Swollman */ 82858Swollman 92858Swollman#ifndef _MACHINE_CLOCK_H_ 104174Sbde#define _MACHINE_CLOCK_H_ 112858Swollman 1255205Speter#ifdef _KERNEL 134174Sbde/* 144174Sbde * i386 to clock driver interface. 1533809Sbde * XXX large parts of the driver and its interface are misplaced. 164174Sbde */ 17122572Sjhbextern int clkintr_pending; 18177631Sphkextern u_int i8254_freq; 19177631Sphkextern int i8254_max_count; 20110039Sphkextern uint64_t tsc_freq; 21184102Sjkimextern int tsc_is_invariant; 22220580Sjkimextern int tsc_perf_stat; 234174Sbde 24166186Sbdevoid i8254_init(void); 25166186Sbde 264174Sbde/* 274174Sbde * Driver to clock driver interface. 284174Sbde */ 2919172Sbde 30178429Sphkvoid startrtclock(void); 3192761Salfredvoid timer_restore(void); 32110370Sphkvoid init_TSC(void); 334174Sbde 34177642Sphk#define HAS_TIMER_SPKR 1 35177642Sphkint timer_spkr_acquire(void); 36177642Sphkint timer_spkr_release(void); 37177642Sphkvoid timer_spkr_setfreq(int freq); 38177642Sphk 3955205Speter#endif /* _KERNEL */ 4019172Sbde 414174Sbde#endif /* !_MACHINE_CLOCK_H_ */ 42