diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2007-02-16 04:27:36 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-02-16 11:13:57 -0500 |
commit | 73b08d2aa4245806ef1bdd48463e9a0b045c62cf (patch) | |
tree | 1cd5b3a7b9f889bb6ff1e7fc6c9a95751faad4d7 /include/linux/clocksource.h | |
parent | 95492e4646e5de8b43d9a7908d6177fb737b61f0 (diff) |
[PATCH] clocksource: replace is_continuous by a flag field
Using a flag filed allows to encode more than one information into a variable.
Preparatory patch for the generic clocksource verification.
[mingo@elte.hu: convert vmitime.c to the new clocksource flag]
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Cc: john stultz <johnstul@us.ibm.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/clocksource.h')
-rw-r--r-- | include/linux/clocksource.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/include/linux/clocksource.h b/include/linux/clocksource.h index 55d714052374..45b0c310ae82 100644 --- a/include/linux/clocksource.h +++ b/include/linux/clocksource.h | |||
@@ -45,7 +45,7 @@ typedef u64 cycle_t; | |||
45 | * @mult: cycle to nanosecond multiplier | 45 | * @mult: cycle to nanosecond multiplier |
46 | * @shift: cycle to nanosecond divisor (power of two) | 46 | * @shift: cycle to nanosecond divisor (power of two) |
47 | * @update_callback: called when safe to alter clocksource values | 47 | * @update_callback: called when safe to alter clocksource values |
48 | * @is_continuous: defines if clocksource is free-running. | 48 | * @flags: flags describing special properties |
49 | * @cycle_interval: Used internally by timekeeping core, please ignore. | 49 | * @cycle_interval: Used internally by timekeeping core, please ignore. |
50 | * @xtime_interval: Used internally by timekeeping core, please ignore. | 50 | * @xtime_interval: Used internally by timekeeping core, please ignore. |
51 | */ | 51 | */ |
@@ -58,7 +58,7 @@ struct clocksource { | |||
58 | u32 mult; | 58 | u32 mult; |
59 | u32 shift; | 59 | u32 shift; |
60 | int (*update_callback)(void); | 60 | int (*update_callback)(void); |
61 | int is_continuous; | 61 | unsigned long flags; |
62 | 62 | ||
63 | /* timekeeping specific data, ignore */ | 63 | /* timekeeping specific data, ignore */ |
64 | cycle_t cycle_last, cycle_interval; | 64 | cycle_t cycle_last, cycle_interval; |
@@ -66,6 +66,12 @@ struct clocksource { | |||
66 | s64 error; | 66 | s64 error; |
67 | }; | 67 | }; |
68 | 68 | ||
69 | /* | ||
70 | * Clock source flags bits:: | ||
71 | */ | ||
72 | #define CLOCK_SOURCE_IS_CONTINUOUS 0x01 | ||
73 | #define CLOCK_SOURCE_MUST_VERIFY 0x02 | ||
74 | |||
69 | /* simplify initialization of mask field */ | 75 | /* simplify initialization of mask field */ |
70 | #define CLOCKSOURCE_MASK(bits) (cycle_t)(bits<64 ? ((1ULL<<bits)-1) : -1) | 76 | #define CLOCKSOURCE_MASK(bits) (cycle_t)(bits<64 ? ((1ULL<<bits)-1) : -1) |
71 | 77 | ||