From patchwork Tue Mar 15 14:51:04 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [lucid/mvl-dove, maverick/mvl-dove] SRU: Setting rtc wakealarm through sysfs interface fails Date: Tue, 15 Mar 2011 04:51:04 -0000 From: Paolo Pisati X-Patchwork-Id: 86993 Message-Id: <4D7F7CD8.10609@canonical.com> To: kernel-team@lists.ubuntu.com SRU Justification: Impact: alarm date are always improperly set to 2091. Fix: see attached patch. Testcase: sudo sh -c "echo `date '+%s' -d '+ 5 minutes'` > /sys/class/rtc/rtc0/wakealarm" && cat /proc/driver/rtc you will notice that alrm_date is 2091. BugLink: https://bugs.launchpad.net/ubuntu/+bug/503546 This affects lucid/mvl-dove and maverick/mvl-dove. Acked-by: Eric Miao Acked-by: Eric Miao >From 39771eca99a21077d163fe150c086d99391d119d Mon Sep 17 00:00:00 2001 From: Paolo Pisati Date: Mon, 14 Mar 2011 17:50:13 +0100 Subject: [PATCH] rtc dove: fix reading back alarm's date. When reading back next alarm year, correctly mask out the RTC_ALARM_VALID constant: this prevents all alarms to _apparently_ be pending in 2091. BugLink: https://bugs.launchpad.net/ubuntu/+bug/503546 Signed-off-by: Paolo Pisati --- drivers/rtc/rtc-mv.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/rtc/rtc-mv.c b/drivers/rtc/rtc-mv.c index daf7c5e..8446717 100755 --- a/drivers/rtc/rtc-mv.c +++ b/drivers/rtc/rtc-mv.c @@ -112,7 +112,7 @@ static int mv_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alm) day = rtc_date & 0x3f; month = (rtc_date >> RTC_MONTH_OFFS) & 0x3f; - year = (rtc_date >> RTC_YEAR_OFFS) & 0xff; + year = (rtc_date >> RTC_YEAR_OFFS) & 0x7f; alm->time.tm_sec = bcd2bin(second); alm->time.tm_min = bcd2bin(minute); -- 1.7.1