diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-10-30 03:20:56 -0400 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2012-10-30 03:20:56 -0400 |
| commit | 53279f36dccffc26ff536003fd6bb97cc21c3b82 (patch) | |
| tree | 9d16e497c0e4158c7c054c479bd0e9ff0388d7bb /include/linux/alarmtimer.h | |
| parent | a6e8c0a25377e27958b11b20e1927885ae7c9857 (diff) | |
| parent | 8f0d8163b50e01f398b14bcd4dc039ac5ab18d64 (diff) | |
Merge tag 'v3.7-rc3' into next to sync up with recent USB and MFD changes
Diffstat (limited to 'include/linux/alarmtimer.h')
| -rw-r--r-- | include/linux/alarmtimer.h | 31 |
1 files changed, 2 insertions, 29 deletions
diff --git a/include/linux/alarmtimer.h b/include/linux/alarmtimer.h index 96c5c249b086..9069694e70eb 100644 --- a/include/linux/alarmtimer.h +++ b/include/linux/alarmtimer.h | |||
| @@ -21,7 +21,6 @@ enum alarmtimer_restart { | |||
| 21 | 21 | ||
| 22 | #define ALARMTIMER_STATE_INACTIVE 0x00 | 22 | #define ALARMTIMER_STATE_INACTIVE 0x00 |
| 23 | #define ALARMTIMER_STATE_ENQUEUED 0x01 | 23 | #define ALARMTIMER_STATE_ENQUEUED 0x01 |
| 24 | #define ALARMTIMER_STATE_CALLBACK 0x02 | ||
| 25 | 24 | ||
| 26 | /** | 25 | /** |
| 27 | * struct alarm - Alarm timer structure | 26 | * struct alarm - Alarm timer structure |
| @@ -35,6 +34,7 @@ enum alarmtimer_restart { | |||
| 35 | */ | 34 | */ |
| 36 | struct alarm { | 35 | struct alarm { |
| 37 | struct timerqueue_node node; | 36 | struct timerqueue_node node; |
| 37 | struct hrtimer timer; | ||
| 38 | enum alarmtimer_restart (*function)(struct alarm *, ktime_t now); | 38 | enum alarmtimer_restart (*function)(struct alarm *, ktime_t now); |
| 39 | enum alarmtimer_type type; | 39 | enum alarmtimer_type type; |
| 40 | int state; | 40 | int state; |
| @@ -43,39 +43,12 @@ struct alarm { | |||
| 43 | 43 | ||
| 44 | void alarm_init(struct alarm *alarm, enum alarmtimer_type type, | 44 | void alarm_init(struct alarm *alarm, enum alarmtimer_type type, |
| 45 | enum alarmtimer_restart (*function)(struct alarm *, ktime_t)); | 45 | enum alarmtimer_restart (*function)(struct alarm *, ktime_t)); |
| 46 | void alarm_start(struct alarm *alarm, ktime_t start); | 46 | int alarm_start(struct alarm *alarm, ktime_t start); |
| 47 | int alarm_try_to_cancel(struct alarm *alarm); | 47 | int alarm_try_to_cancel(struct alarm *alarm); |
| 48 | int alarm_cancel(struct alarm *alarm); | 48 | int alarm_cancel(struct alarm *alarm); |
| 49 | 49 | ||
| 50 | u64 alarm_forward(struct alarm *alarm, ktime_t now, ktime_t interval); | 50 | u64 alarm_forward(struct alarm *alarm, ktime_t now, ktime_t interval); |
| 51 | 51 | ||
| 52 | /* | ||
| 53 | * A alarmtimer is active, when it is enqueued into timerqueue or the | ||
| 54 | * callback function is running. | ||
| 55 | */ | ||
| 56 | static inline int alarmtimer_active(const struct alarm *timer) | ||
| 57 | { | ||
| 58 | return timer->state != ALARMTIMER_STATE_INACTIVE; | ||
| 59 | } | ||
| 60 | |||
| 61 | /* | ||
| 62 | * Helper function to check, whether the timer is on one of the queues | ||
| 63 | */ | ||
| 64 | static inline int alarmtimer_is_queued(struct alarm *timer) | ||
| 65 | { | ||
| 66 | return timer->state & ALARMTIMER_STATE_ENQUEUED; | ||
| 67 | } | ||
| 68 | |||
| 69 | /* | ||
| 70 | * Helper function to check, whether the timer is running the callback | ||
| 71 | * function | ||
| 72 | */ | ||
| 73 | static inline int alarmtimer_callback_running(struct alarm *timer) | ||
| 74 | { | ||
| 75 | return timer->state & ALARMTIMER_STATE_CALLBACK; | ||
| 76 | } | ||
| 77 | |||
| 78 | |||
| 79 | /* Provide way to access the rtc device being used by alarmtimers */ | 52 | /* Provide way to access the rtc device being used by alarmtimers */ |
| 80 | struct rtc_device *alarmtimer_get_rtcdev(void); | 53 | struct rtc_device *alarmtimer_get_rtcdev(void); |
| 81 | 54 | ||
