diff options
Diffstat (limited to 'kernel/power/main.c')
| -rw-r--r-- | kernel/power/main.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/kernel/power/main.c b/kernel/power/main.c index 95bff23ecdaa..0b7476f5d2a6 100644 --- a/kernel/power/main.c +++ b/kernel/power/main.c | |||
| @@ -635,6 +635,13 @@ static void __init test_wakealarm(struct rtc_device *rtc, suspend_state_t state) | |||
| 635 | } | 635 | } |
| 636 | if (status < 0) | 636 | if (status < 0) |
| 637 | printk(err_suspend, status); | 637 | printk(err_suspend, status); |
| 638 | |||
| 639 | /* Some platforms can't detect that the alarm triggered the | ||
| 640 | * wakeup, or (accordingly) disable it after it afterwards. | ||
| 641 | * It's supposed to give oneshot behavior; cope. | ||
| 642 | */ | ||
| 643 | alm.enabled = false; | ||
| 644 | rtc_set_alarm(rtc, &alm); | ||
| 638 | } | 645 | } |
| 639 | 646 | ||
| 640 | static int __init has_wakealarm(struct device *dev, void *name_ptr) | 647 | static int __init has_wakealarm(struct device *dev, void *name_ptr) |
