diff options
| author | Ingo Molnar <mingo@kernel.org> | 2013-12-17 09:27:08 -0500 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2013-12-17 09:27:08 -0500 |
| commit | bb799d3b980eb803ca2da4a4eefbd9308f8d988a (patch) | |
| tree | 69fbe0cd6d47b23a50f5e1d87bf7489532fae149 /drivers/rtc/rtc-at91rm9200.c | |
| parent | 919fc6e34831d1c2b58bfb5ae261dc3facc9b269 (diff) | |
| parent | 319e2e3f63c348a9b66db4667efa73178e18b17d (diff) | |
Merge tag 'v3.13-rc4' into core/locking
Merge Linux 3.13-rc4, to refresh this rather old tree with the latest fixes.
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/rtc/rtc-at91rm9200.c')
| -rw-r--r-- | drivers/rtc/rtc-at91rm9200.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/rtc/rtc-at91rm9200.c b/drivers/rtc/rtc-at91rm9200.c index 8b2cd8a5a2ff..3281c90691c3 100644 --- a/drivers/rtc/rtc-at91rm9200.c +++ b/drivers/rtc/rtc-at91rm9200.c | |||
| @@ -220,6 +220,8 @@ static int at91_rtc_setalarm(struct device *dev, struct rtc_wkalrm *alrm) | |||
| 220 | 220 | ||
| 221 | at91_alarm_year = tm.tm_year; | 221 | at91_alarm_year = tm.tm_year; |
| 222 | 222 | ||
| 223 | tm.tm_mon = alrm->time.tm_mon; | ||
| 224 | tm.tm_mday = alrm->time.tm_mday; | ||
| 223 | tm.tm_hour = alrm->time.tm_hour; | 225 | tm.tm_hour = alrm->time.tm_hour; |
| 224 | tm.tm_min = alrm->time.tm_min; | 226 | tm.tm_min = alrm->time.tm_min; |
| 225 | tm.tm_sec = alrm->time.tm_sec; | 227 | tm.tm_sec = alrm->time.tm_sec; |
| @@ -428,6 +430,14 @@ static int __exit at91_rtc_remove(struct platform_device *pdev) | |||
| 428 | return 0; | 430 | return 0; |
| 429 | } | 431 | } |
| 430 | 432 | ||
| 433 | static void at91_rtc_shutdown(struct platform_device *pdev) | ||
| 434 | { | ||
| 435 | /* Disable all interrupts */ | ||
| 436 | at91_rtc_write(AT91_RTC_IDR, AT91_RTC_ACKUPD | AT91_RTC_ALARM | | ||
| 437 | AT91_RTC_SECEV | AT91_RTC_TIMEV | | ||
| 438 | AT91_RTC_CALEV); | ||
| 439 | } | ||
| 440 | |||
| 431 | #ifdef CONFIG_PM_SLEEP | 441 | #ifdef CONFIG_PM_SLEEP |
| 432 | 442 | ||
| 433 | /* AT91RM9200 RTC Power management control */ | 443 | /* AT91RM9200 RTC Power management control */ |
| @@ -466,6 +476,7 @@ static SIMPLE_DEV_PM_OPS(at91_rtc_pm_ops, at91_rtc_suspend, at91_rtc_resume); | |||
| 466 | 476 | ||
| 467 | static struct platform_driver at91_rtc_driver = { | 477 | static struct platform_driver at91_rtc_driver = { |
| 468 | .remove = __exit_p(at91_rtc_remove), | 478 | .remove = __exit_p(at91_rtc_remove), |
| 479 | .shutdown = at91_rtc_shutdown, | ||
| 469 | .driver = { | 480 | .driver = { |
| 470 | .name = "at91_rtc", | 481 | .name = "at91_rtc", |
| 471 | .owner = THIS_MODULE, | 482 | .owner = THIS_MODULE, |
