| /* | |
| * Copyright (C) 2012 - 2014 Cisco Systems | |
| * Copyright (C) 2000 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com) | |
| * Licensed under the GPL | |
| */ | |
| #ifndef __TIMER_INTERNAL_H__ | |
| #define __TIMER_INTERNAL_H__ | |
| #define TIMER_MULTIPLIER 256 | |
| #define TIMER_MIN_DELTA 500 | |
| enum time_travel_mode { | |
| TT_MODE_OFF, | |
| TT_MODE_BASIC, | |
| TT_MODE_INFCPU, | |
| }; | |
| enum time_travel_timer_mode { | |
| TT_TMR_DISABLED, | |
| TT_TMR_ONESHOT, | |
| TT_TMR_PERIODIC, | |
| }; | |
| #ifdef CONFIG_UML_TIME_TRAVEL_SUPPORT | |
| extern enum time_travel_mode time_travel_mode; | |
| extern unsigned long long time_travel_time; | |
| extern enum time_travel_timer_mode time_travel_timer_mode; | |
| extern unsigned long long time_travel_timer_expiry; | |
| extern unsigned long long time_travel_timer_interval; | |
| static inline void time_travel_set_time(unsigned long long ns) | |
| { | |
| time_travel_time = ns; | |
| } | |
| static inline void time_travel_set_timer(enum time_travel_timer_mode mode, | |
| unsigned long long expiry) | |
| { | |
| time_travel_timer_mode = mode; | |
| time_travel_timer_expiry = expiry; | |
| } | |
| #else | |
| #define time_travel_mode TT_MODE_OFF | |
| #define time_travel_time 0 | |
| #define time_travel_timer_expiry 0 | |
| #define time_travel_timer_interval 0 | |
| static inline void time_travel_set_time(unsigned long long ns) | |
| { | |
| } | |
| static inline void time_travel_set_timer(enum time_travel_timer_mode mode, | |
| unsigned long long expiry) | |
| { | |
| } | |
| #define time_travel_timer_mode TT_TMR_DISABLED | |
| #endif | |
| #endif |