summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJohannes Weiner <jw@emlix.com>2009-12-01 22:17:49 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2009-12-02 01:32:20 +0100
commitcb8799eeddd542abd504c62c11014dfbaec7f3a1 (patch)
tree0b7840419fd006bb6f61dbcbe412f5af0ab60b51 /drivers
parentrtc-x1205: fix rtc_time to y2k register value conversion (diff)
downloadlinux-cb8799eeddd542abd504c62c11014dfbaec7f3a1.tar.xz
linux-cb8799eeddd542abd504c62c11014dfbaec7f3a1.zip
rtc-x1205: reset clock to sane state after power failure
When detecting power failure, the probe function would reset the clock time to defined state. However, the clock's _date_ might still be bogus and a subsequent probe fails when sanity-checking these values. Change the power-failure fixup code to do a full setting of rtc_time, including a valid date. Signed-off-by: Johannes Weiner <jw@emlix.com> Cc: Alessandro Zummo <a.zummo@towertech.it> Cc: Paul Gortmaker <p_gortmaker@yahoo.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/rtc/rtc-x1205.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/rtc/rtc-x1205.c b/drivers/rtc/rtc-x1205.c
index cc9ba47b2154..6583c1a8b070 100644
--- a/drivers/rtc/rtc-x1205.c
+++ b/drivers/rtc/rtc-x1205.c
@@ -280,9 +280,9 @@ static int x1205_fix_osc(struct i2c_client *client)
int err;
struct rtc_time tm;
- tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
+ memset(&tm, 0, sizeof(tm));
- err = x1205_set_datetime(client, &tm, 0, X1205_CCR_BASE, 0);
+ err = x1205_set_datetime(client, &tm, 1, X1205_CCR_BASE, 0);
if (err < 0)
dev_err(&client->dev, "unable to restart the oscillator\n");