lkml.org 
[lkml]   [2012]   [Jun]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Subject[PATCH] rtc: ds1307: Register offset moved to chip description
From
Date
rtc: ds1307: Register offset moved to chip description

From: Austin Boyle <Austin.Boyle@aviatnet.com>

Register offset is added to chip description instead of being hard-coded
into probe function.

Based on v3.5-rc4

Cc: Wolfram Sang <w.sang@pengutronix.de>
Cc: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Austin Boyle <Austin.Boyle@aviatnet.com>

---

diff --git a/a/drivers/rtc/rtc-ds1307.c b/b/drivers/rtc/rtc-ds1307.c
index 836710c..abf837b 100644
--- a/a/drivers/rtc/rtc-ds1307.c
+++ b/b/drivers/rtc/rtc-ds1307.c
@@ -122,6 +122,7 @@ struct ds1307 {

struct chip_desc {
unsigned alarm:1;
+ u8 offset;
u16 nvram_offset;
u16 nvram_size;
u16 trickle_charger_reg;
@@ -149,6 +150,9 @@ static const struct chip_desc chips[last_ds_type] = {
[ds_1388] = {
.trickle_charger_reg = 0x0a,
},
+ [ds_1388] = {
+ .offset = 1, /* seconds field starts at 1 */
+ },
[ds_3231] = {
.alarm = 1,
},
@@ -646,6 +650,7 @@ static int __devinit ds1307_probe(struct i2c_client *client,

ds1307->client = client;
ds1307->type = id->driver_data;
+ ds1307->offset = chip->offset;

if (pdata && pdata->trickle_charger_setup && chip->trickle_charger_reg)
i2c_smbus_write_byte_data(client, chip->trickle_charger_reg,
@@ -768,9 +773,6 @@ static int __devinit ds1307_probe(struct i2c_client *client,
hour);
}
break;
- case ds_1388:
- ds1307->offset = 1; /* Seconds starts at 1 */
- break;
default:
break;
}


\
 
 \ /
  Last update: 2012-06-27 01:01    [W:0.303 / U:1.148 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site