clock.h revision 110370
12858Swollman/* 22858Swollman * Kernel interface to machine-dependent clock driver. 32858Swollman * Garrett Wollman, September 1994. 42858Swollman * This file is in the public domain. 512533Swollman * 650477Speter * $FreeBSD: head/sys/amd64/include/clock.h 110370 2003-02-05 09:20:40Z phk $ 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 */ 174174Sbdeextern int adjkerntz; 184174Sbdeextern int disable_rtc_set; 19110296Sjakeextern int pscnt; 20110296Sjakeextern int psdiv; 2132052Sphkextern int statclock_disable; 2232052Sphkextern u_int timer_freq; 2332052Sphkextern int timer0_max_count; 24110039Sphkextern uint64_t tsc_freq; 2547592Sphkextern int tsc_is_broken; 2618992Sbdeextern int wall_cmos_clock; 2734058Stegge#ifdef APIC_IO 2834058Steggeextern int apic_8254_intr; 2934058Stegge#endif 304174Sbde 314174Sbde/* 324174Sbde * Driver to clock driver interface. 334174Sbde */ 3419172Sbdestruct clockframe; 3519172Sbde 3692761Salfredint acquire_timer0(int rate, void (*function)(struct clockframe *frame)); 3792761Salfredint acquire_timer2(int mode); 3892761Salfredint release_timer0(void); 3992761Salfredint release_timer2(void); 4016363Sasami#ifndef PC98 4192761Salfredint rtcin(int val); 4216363Sasami#else 4392761Salfredint acquire_timer1(int mode); 4492761Salfredint release_timer1(void); 4516363Sasami#endif 4692761Salfredint sysbeep(int pitch, int period); 4792761Salfredvoid timer_restore(void); 48110370Sphkvoid init_TSC(void); 494174Sbde 5055205Speter#endif /* _KERNEL */ 5119172Sbde 524174Sbde#endif /* !_MACHINE_CLOCK_H_ */ 53