diff options
author | Mike Frysinger <[email protected]> | 2008-08-05 13:01:20 -0700 |
---|---|---|
committer | Linus Torvalds <[email protected]> | 2008-08-05 14:33:48 -0700 |
commit | 140fab14aef093cedf87f69234474c04fdcec99c (patch) | |
tree | 6b7f39dfb95a8db26296e621292b4ff2783ab092 /drivers/rtc | |
parent | 3b128fe04a3087d6e974b87402dc6e75d3142186 (diff) |
blackfin RTC driver: wait for the write complete interrupt complete before sleeping
Since we use the write complete interrupt, wait for it
to complete before sleeping so we don't wake right back up due to it
Signed-off-by: Mike Frysinger <[email protected]>
Signed-off-by: Bryan Wu <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Alessandro Zummo <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'drivers/rtc')
-rw-r--r-- | drivers/rtc/rtc-bfin.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/rtc/rtc-bfin.c b/drivers/rtc/rtc-bfin.c index d53772f59ce5..e6b0470063e8 100644 --- a/drivers/rtc/rtc-bfin.c +++ b/drivers/rtc/rtc-bfin.c @@ -435,9 +435,10 @@ static int __devexit bfin_rtc_remove(struct platform_device *pdev) #ifdef CONFIG_PM static int bfin_rtc_suspend(struct platform_device *pdev, pm_message_t state) { - if (device_may_wakeup(&pdev->dev)) + if (device_may_wakeup(&pdev->dev)) { enable_irq_wake(IRQ_RTC); - else + bfin_rtc_sync_pending(&pdev->dev); + } else bfin_rtc_int_clear(-1); return 0; |