aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/sleep/proc.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-07-06 08:23:39 -0400
committerIngo Molnar <mingo@elte.hu>2008-07-06 08:23:39 -0400
commit68083e05d72d94f347293d8cc0067050ba904bfa (patch)
tree842e71365bd90866be7add181661a4039d891564 /drivers/acpi/sleep/proc.c
parent7baac8b91f9871ba8cb09af84de4ae1d86d07812 (diff)
parentb7279469d66b55119784b8b9529c99c1955fe747 (diff)
Merge commit 'v2.6.26-rc9' into cpus4096
Diffstat (limited to 'drivers/acpi/sleep/proc.c')
-rw-r--r--drivers/acpi/sleep/proc.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/acpi/sleep/proc.c b/drivers/acpi/sleep/proc.c
index 8a5fe8710513..4ebbba2b6b19 100644
--- a/drivers/acpi/sleep/proc.c
+++ b/drivers/acpi/sleep/proc.c
@@ -315,8 +315,11 @@ acpi_system_write_alarm(struct file *file,
315 cmos_bcd_write(day, acpi_gbl_FADT.day_alarm, rtc_control); 315 cmos_bcd_write(day, acpi_gbl_FADT.day_alarm, rtc_control);
316 if (acpi_gbl_FADT.month_alarm) 316 if (acpi_gbl_FADT.month_alarm)
317 cmos_bcd_write(mo, acpi_gbl_FADT.month_alarm, rtc_control); 317 cmos_bcd_write(mo, acpi_gbl_FADT.month_alarm, rtc_control);
318 if (acpi_gbl_FADT.century) 318 if (acpi_gbl_FADT.century) {
319 if (adjust)
320 yr += cmos_bcd_read(acpi_gbl_FADT.century, rtc_control) * 100;
319 cmos_bcd_write(yr / 100, acpi_gbl_FADT.century, rtc_control); 321 cmos_bcd_write(yr / 100, acpi_gbl_FADT.century, rtc_control);
322 }
320 /* enable the rtc alarm interrupt */ 323 /* enable the rtc alarm interrupt */
321 rtc_control |= RTC_AIE; 324 rtc_control |= RTC_AIE;
322 CMOS_WRITE(rtc_control, RTC_CONTROL); 325 CMOS_WRITE(rtc_control, RTC_CONTROL);
@@ -495,6 +498,12 @@ static int __init acpi_sleep_proc_init(void)
495 acpi_root_dir, &acpi_system_alarm_fops); 498 acpi_root_dir, &acpi_system_alarm_fops);
496 499
497 acpi_install_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler, NULL); 500 acpi_install_fixed_event_handler(ACPI_EVENT_RTC, rtc_handler, NULL);
501 /*
502 * Disable the RTC event after installing RTC handler.
503 * Only when RTC alarm is set will it be enabled.
504 */
505 acpi_clear_event(ACPI_EVENT_RTC);
506 acpi_disable_event(ACPI_EVENT_RTC, 0);
498#endif /* HAVE_ACPI_LEGACY_ALARM */ 507#endif /* HAVE_ACPI_LEGACY_ALARM */
499 508
500 /* 'wakeup device' [R/W] */ 509 /* 'wakeup device' [R/W] */