diff options
| author | Todd Poynor <toddpoynor@google.com> | 2013-05-10 17:41:06 -0700 | 
|---|---|---|
| committer | Arve Hjønnevåg <arve@android.com> | 2013-07-01 14:16:28 -0700 | 
| commit | 9231422b0b0c91d88361752efd34b67ff5e2800c (patch) | |
| tree | b7feedc6719ba8c3168dc49f77aca66a920798ac /kernel/time/alarmtimer.c | |
| parent | 5c6b445de2639be5e056b74d7e6479b02e4923cf (diff) | |
| download | olio-linux-3.10-9231422b0b0c91d88361752efd34b67ff5e2800c.tar.xz olio-linux-3.10-9231422b0b0c91d88361752efd34b67ff5e2800c.zip  | |
alarmtimer: add alarm_start_relative
Start an alarmtimer with an expires time relative to the current time
of the associated clock.
Change-Id: Ifb5309a15e0d502bb4d0209ca5510a56ee7fa88c
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Diffstat (limited to 'kernel/time/alarmtimer.c')
| -rw-r--r-- | kernel/time/alarmtimer.c | 15 | 
1 files changed, 14 insertions, 1 deletions
diff --git a/kernel/time/alarmtimer.c b/kernel/time/alarmtimer.c index 2f125e74d33..adfcd78e79f 100644 --- a/kernel/time/alarmtimer.c +++ b/kernel/time/alarmtimer.c @@ -305,7 +305,7 @@ void alarm_init(struct alarm *alarm, enum alarmtimer_type type,  }  /** - * alarm_start - Sets an alarm to fire + * alarm_start - Sets an absolute alarm to fire   * @alarm: ptr to alarm to set   * @start: time to run the alarm   */ @@ -324,6 +324,19 @@ int alarm_start(struct alarm *alarm, ktime_t start)  	return ret;  } +/** + * alarm_start_relative - Sets a relative alarm to fire + * @alarm: ptr to alarm to set + * @start: time relative to now to run the alarm + */ +int alarm_start_relative(struct alarm *alarm, ktime_t start) +{ +	struct alarm_base *base = &alarm_bases[alarm->type]; + +	start = ktime_add(start, base->gettime()); +	return alarm_start(alarm, start); +} +  void alarm_restart(struct alarm *alarm)  {  	struct alarm_base *base = &alarm_bases[alarm->type];  |