diff options
author | =?UTF-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= <arve@android.com> | 2011-12-13 01:23:15 +0800 |
---|---|---|
committer | Andy Green <andy.green@linaro.org> | 2011-12-26 16:42:31 +0800 |
commit | cef7cbc24208f83d655cf98b086a538691d7915f (patch) | |
tree | 2e491426fe0abd3bec8c3a577f3bdb07d7f02275 /drivers | |
parent | 28079bdd34d4e00030ba3abd1a5e35ad718c7eb1 (diff) |
rtc: alarm: Don't use save_time_delta.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Change-Id: Iaefeca497de02fe36b7f5d79075912f6e349ec53
Signed-off-by: Arve Hjønnevåg <arve@android.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/rtc/alarm.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/rtc/alarm.c b/drivers/rtc/alarm.c index 18492fded49..084ef648f9c 100644 --- a/drivers/rtc/alarm.c +++ b/drivers/rtc/alarm.c @@ -373,8 +373,8 @@ static int alarm_suspend(struct platform_device *pdev, pm_message_t state) struct rtc_time rtc_current_rtc_time; unsigned long rtc_current_time; unsigned long rtc_alarm_time; - struct timespec rtc_current_timespec; struct timespec rtc_delta; + struct timespec wall_time; struct alarm_queue *wakeup_queue = NULL; struct alarm_queue *tmp_queue = NULL; @@ -398,10 +398,11 @@ static int alarm_suspend(struct platform_device *pdev, pm_message_t state) wakeup_queue = tmp_queue; if (wakeup_queue) { rtc_read_time(alarm_rtc_dev, &rtc_current_rtc_time); - rtc_current_timespec.tv_nsec = 0; - rtc_tm_to_time(&rtc_current_rtc_time, - &rtc_current_timespec.tv_sec); - save_time_delta(&rtc_delta, &rtc_current_timespec); + getnstimeofday(&wall_time); + rtc_tm_to_time(&rtc_current_rtc_time, &rtc_current_time); + set_normalized_timespec(&rtc_delta, + wall_time.tv_sec - rtc_current_time, + wall_time.tv_nsec); rtc_alarm_time = timespec_sub(ktime_to_timespec( hrtimer_get_expires(&wakeup_queue->timer)), |