Commit 32d322bc authored by Wolfram Sang's avatar Wolfram Sang Committed by Linus Torvalds

rtc: ds1307: refactor chip_desc table

The chip_desc table is suboptimal.  Currently it requires an entry for
every new chip type, even if it is empty.  This has already been
forgotten for the ds1388.  Refactor the code, so new entries are only
needed, when they chip type really needs a (non-empty) description.
Also make the table visually more appealing.
Signed-off-by: default avatarWolfram Sang <w.sang@pengutronix.de>
Cc: Austin Boyle <Austin.Boyle@aviatnet.com>
Cc: David Anders <danders.dev@gmail.com>
Cc: Alessandro Zummo <alessandro.zummo@towertech.it>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent fef931ff
...@@ -36,6 +36,7 @@ enum ds_type { ...@@ -36,6 +36,7 @@ enum ds_type {
m41t00, m41t00,
mcp7941x, mcp7941x,
rx_8025, rx_8025,
last_ds_type /* always last */
// rs5c372 too? different address... // rs5c372 too? different address...
}; };
...@@ -120,30 +121,23 @@ struct chip_desc { ...@@ -120,30 +121,23 @@ struct chip_desc {
unsigned alarm:1; unsigned alarm:1;
}; };
static const struct chip_desc chips[] = { static const struct chip_desc chips[last_ds_type] = {
[ds_1307] = { [ds_1307] = {
.nvram56 = 1, .nvram56 = 1,
}, },
[ds_1337] = { [ds_1337] = {
.alarm = 1, .alarm = 1,
}, },
[ds_1338] = { [ds_1338] = {
.nvram56 = 1, .nvram56 = 1,
}, },
[ds_1339] = { [ds_1339] = {
.alarm = 1, .alarm = 1,
}, },
[ds_1340] = { [ds_3231] = {
}, .alarm = 1,
[ds_3231] = { },
.alarm = 1, };
},
[m41t00] = {
},
[mcp7941x] = {
},
[rx_8025] = {
}, };
static const struct i2c_device_id ds1307_id[] = { static const struct i2c_device_id ds1307_id[] = {
{ "ds1307", ds_1307 }, { "ds1307", ds_1307 },
...@@ -836,11 +830,7 @@ static int __devinit ds1307_probe(struct i2c_client *client, ...@@ -836,11 +830,7 @@ static int __devinit ds1307_probe(struct i2c_client *client,
} }
break; break;
case rx_8025: default:
case ds_1337:
case ds_1339:
case ds_1388:
case ds_3231:
break; break;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment