blob: 12dd67bf760f8f270ef577b9675235aff5054283 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _ASMi386_TIMER_H
2#define _ASMi386_TIMER_H
3#include <linux/init.h>
Shaohua Lic3c433e2005-09-03 15:57:07 -07004#include <linux/pm.h>
Linus Torvalds1da177e2005-04-16 15:20:36 -07005
Linus Torvalds1da177e2005-04-16 15:20:36 -07006#define TICK_SIZE (tick_nsec / 1000)
Zachary Amsden6cb9a832007-03-05 00:30:35 -08007
Linus Torvalds1da177e2005-04-16 15:20:36 -07008void setup_pit_timer(void);
Zachary Amsden6cb9a832007-03-05 00:30:35 -08009unsigned long long native_sched_clock(void);
Zachary Amsden1182d852007-03-05 00:30:36 -080010unsigned long native_calculate_cpu_khz(void);
Zachary Amsden6cb9a832007-03-05 00:30:35 -080011
Linus Torvalds1da177e2005-04-16 15:20:36 -070012/* Modifiers for buggy PIT handling */
Linus Torvalds1da177e2005-04-16 15:20:36 -070013extern int pit_latch_buggy;
Linus Torvalds1da177e2005-04-16 15:20:36 -070014extern int timer_ack;
Zachary Amsden7ce0bcf2007-02-13 13:26:21 +010015extern int no_timer_check;
Zachary Amsdenbbab4f32007-02-13 13:26:21 +010016extern int no_sync_cmos_clock;
Dave Jonesc5d28fb2005-05-31 19:03:46 -070017extern int recalibrate_cpu_khz(void);
Linus Torvalds1da177e2005-04-16 15:20:36 -070018
Zachary Amsden6cb9a832007-03-05 00:30:35 -080019#ifndef CONFIG_PARAVIRT
20#define get_scheduled_cycles(val) rdtscll(val)
Zachary Amsden1182d852007-03-05 00:30:36 -080021#define calculate_cpu_khz() native_calculate_cpu_khz()
Zachary Amsden6cb9a832007-03-05 00:30:35 -080022#endif
23
Linus Torvalds1da177e2005-04-16 15:20:36 -070024#endif