diff options
Diffstat (limited to 'include/asm-ia64/timex.h')
-rw-r--r-- | include/asm-ia64/timex.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/include/asm-ia64/timex.h b/include/asm-ia64/timex.h new file mode 100644 index 000000000000..414aae060440 --- /dev/null +++ b/include/asm-ia64/timex.h | |||
@@ -0,0 +1,40 @@ | |||
1 | #ifndef _ASM_IA64_TIMEX_H | ||
2 | #define _ASM_IA64_TIMEX_H | ||
3 | |||
4 | /* | ||
5 | * Copyright (C) 1998-2001, 2003 Hewlett-Packard Co | ||
6 | * David Mosberger-Tang <davidm@hpl.hp.com> | ||
7 | */ | ||
8 | /* | ||
9 | * 2001/01/18 davidm Removed CLOCK_TICK_RATE. It makes no sense on IA-64. | ||
10 | * Also removed cacheflush_time as it's entirely unused. | ||
11 | */ | ||
12 | |||
13 | #include <asm/intrinsics.h> | ||
14 | #include <asm/processor.h> | ||
15 | |||
16 | typedef unsigned long cycles_t; | ||
17 | |||
18 | /* | ||
19 | * For performance reasons, we don't want to define CLOCK_TICK_TRATE as | ||
20 | * local_cpu_data->itc_rate. Fortunately, we don't have to, either: according to George | ||
21 | * Anzinger, 1/CLOCK_TICK_RATE is taken as the resolution of the timer clock. The time | ||
22 | * calculation assumes that you will use enough of these so that your tick size <= 1/HZ. | ||
23 | * If the calculation shows that your CLOCK_TICK_RATE can not supply exactly 1/HZ ticks, | ||
24 | * the actual value is calculated and used to update the wall clock each jiffie. Setting | ||
25 | * the CLOCK_TICK_RATE to x*HZ insures that the calculation will find no errors. Hence we | ||
26 | * pick a multiple of HZ which gives us a (totally virtual) CLOCK_TICK_RATE of about | ||
27 | * 100MHz. | ||
28 | */ | ||
29 | #define CLOCK_TICK_RATE (HZ * 100000UL) | ||
30 | |||
31 | static inline cycles_t | ||
32 | get_cycles (void) | ||
33 | { | ||
34 | cycles_t ret; | ||
35 | |||
36 | ret = ia64_getreg(_IA64_REG_AR_ITC); | ||
37 | return ret; | ||
38 | } | ||
39 | |||
40 | #endif /* _ASM_IA64_TIMEX_H */ | ||