|
@@ -582,6 +582,7 @@ enum hrtimer_restart rtc_pie_update_irq(struct hrtimer *timer)
|
|
|
void rtc_update_irq(struct rtc_device *rtc,
|
|
|
unsigned long num, unsigned long events)
|
|
|
{
|
|
|
+ pm_stay_awake(rtc->dev.parent);
|
|
|
schedule_work(&rtc->irqwork);
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(rtc_update_irq);
|
|
@@ -844,6 +845,7 @@ void rtc_timer_do_work(struct work_struct *work)
|
|
|
|
|
|
mutex_lock(&rtc->ops_lock);
|
|
|
again:
|
|
|
+ pm_relax(rtc->dev.parent);
|
|
|
__rtc_read_time(rtc, &tm);
|
|
|
now = rtc_tm_to_ktime(tm);
|
|
|
while ((next = timerqueue_getnext(&rtc->timerqueue))) {
|