aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/time/alarmtimer.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/time/alarmtimer.c')
-rw-r--r--kernel/time/alarmtimer.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/kernel/time/alarmtimer.c b/kernel/time/alarmtimer.c
index 7fbba635a549..e840ed867a5d 100644
--- a/kernel/time/alarmtimer.c
+++ b/kernel/time/alarmtimer.c
@@ -271,11 +271,27 @@ static int alarmtimer_suspend(struct device *dev)
271 __pm_wakeup_event(ws, MSEC_PER_SEC); 271 __pm_wakeup_event(ws, MSEC_PER_SEC);
272 return ret; 272 return ret;
273} 273}
274
275static int alarmtimer_resume(struct device *dev)
276{
277 struct rtc_device *rtc;
278
279 rtc = alarmtimer_get_rtcdev();
280 if (rtc)
281 rtc_timer_cancel(rtc, &rtctimer);
282 return 0;
283}
284
274#else 285#else
275static int alarmtimer_suspend(struct device *dev) 286static int alarmtimer_suspend(struct device *dev)
276{ 287{
277 return 0; 288 return 0;
278} 289}
290
291static int alarmtimer_resume(struct device *dev)
292{
293 return 0;
294}
279#endif 295#endif
280 296
281static void alarmtimer_freezerset(ktime_t absexp, enum alarmtimer_type type) 297static void alarmtimer_freezerset(ktime_t absexp, enum alarmtimer_type type)
@@ -800,6 +816,7 @@ out:
800/* Suspend hook structures */ 816/* Suspend hook structures */
801static const struct dev_pm_ops alarmtimer_pm_ops = { 817static const struct dev_pm_ops alarmtimer_pm_ops = {
802 .suspend = alarmtimer_suspend, 818 .suspend = alarmtimer_suspend,
819 .resume = alarmtimer_resume,
803}; 820};
804 821
805static struct platform_driver alarmtimer_driver = { 822static struct platform_driver alarmtimer_driver = {