From 6c88507ba9df4226d160d6311b4b3df874b57859 Mon Sep 17 00:00:00 2001 From: Dirk Eibach Date: Sun, 10 Dec 2006 21:21:31 +0100 Subject: [PATCH] --- yaml --- r: 44346 b: refs/heads/master c: 763d9c046a2e511ec090a8986d3f85edf7448e7e h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/i2c/chips/ds1337.c | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 77294ea45105..a1013976e47b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a980a99ae5ada5260ddae15da45582dad32dbb93 +refs/heads/master: 763d9c046a2e511ec090a8986d3f85edf7448e7e diff --git a/trunk/drivers/i2c/chips/ds1337.c b/trunk/drivers/i2c/chips/ds1337.c index 93d483b8b770..ec17d6b684a2 100644 --- a/trunk/drivers/i2c/chips/ds1337.c +++ b/trunk/drivers/i2c/chips/ds1337.c @@ -347,13 +347,19 @@ static void ds1337_init_client(struct i2c_client *client) if ((status & 0x80) || (control & 0x80)) { /* RTC not running */ - u8 buf[16]; + u8 buf[1+16]; /* First byte is interpreted as address */ struct i2c_msg msg[1]; dev_dbg(&client->dev, "%s: RTC not running!\n", __FUNCTION__); /* Initialize all, including STATUS and CONTROL to zero */ memset(buf, 0, sizeof(buf)); + + /* Write valid values in the date/time registers */ + buf[1+DS1337_REG_DAY] = 1; + buf[1+DS1337_REG_DATE] = 1; + buf[1+DS1337_REG_MONTH] = 1; + msg[0].addr = client->addr; msg[0].flags = 0; msg[0].len = sizeof(buf);