ds2782_battery: Get rid of magic numbers in driver_data

Constructions like 'if (id->driver_data == 1)' look quite weird.
This patch introduces 'enum ds278x_num_id', which makes things
much more understandable, i.e. 'if (id->driver_data == DS2786)'.

Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
Acked-by: Mike Rapoport <mike@compulab.co.il>
This commit is contained in:
Anton Vorontsov 2010-04-26 22:10:52 +04:00
parent 9b9ade6b61
commit ab6cc8f9b7

View File

@ -300,13 +300,18 @@ static int ds278x_battery_remove(struct i2c_client *client)
return 0; return 0;
} }
enum ds278x_num_id {
DS2782 = 0,
DS2786,
};
static struct ds278x_battery_ops ds278x_ops[] = { static struct ds278x_battery_ops ds278x_ops[] = {
[0] = { [DS2782] = {
.get_current = ds2782_get_current, .get_current = ds2782_get_current,
.get_voltage = ds2782_get_voltage, .get_voltage = ds2782_get_voltage,
.get_capacity = ds2782_get_capacity, .get_capacity = ds2782_get_capacity,
}, },
[1] = { [DS2786] = {
.get_current = ds2786_get_current, .get_current = ds2786_get_current,
.get_voltage = ds2786_get_voltage, .get_voltage = ds2786_get_voltage,
.get_capacity = ds2786_get_capacity, .get_capacity = ds2786_get_capacity,
@ -325,7 +330,7 @@ static int ds278x_battery_probe(struct i2c_client *client,
* ds2786 should have the sense resistor value set * ds2786 should have the sense resistor value set
* in the platform data * in the platform data
*/ */
if (id->driver_data == 1 && !pdata) { if (id->driver_data == DS2786 && !pdata) {
dev_err(&client->dev, "missing platform data for ds2786\n"); dev_err(&client->dev, "missing platform data for ds2786\n");
return -EINVAL; return -EINVAL;
} }
@ -355,7 +360,7 @@ static int ds278x_battery_probe(struct i2c_client *client,
goto fail_name; goto fail_name;
} }
if (id->driver_data == 1) if (id->driver_data == DS2786)
info->rsns = pdata->rsns; info->rsns = pdata->rsns;
i2c_set_clientdata(client, info); i2c_set_clientdata(client, info);
@ -385,8 +390,8 @@ static int ds278x_battery_probe(struct i2c_client *client,
} }
static const struct i2c_device_id ds278x_id[] = { static const struct i2c_device_id ds278x_id[] = {
{"ds2782", 0}, {"ds2782", DS2782},
{"ds2786", 1}, {"ds2786", DS2786},
{}, {},
}; };