1
0
Fork 0

hwmon: (ds1621) Convert to use devm_hwmon_device_register_with_groups

Also use new macro __ATTRIBUTE_GROUPS to declare attribute groups.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
hifive-unleashed-5.1
Guenter Roeck 2013-07-11 22:55:51 -07:00
parent a150d95b7c
commit 0d36dce0f1
1 changed files with 4 additions and 20 deletions

View File

@ -354,11 +354,7 @@ static const struct attribute_group ds1621_group = {
.attrs = ds1621_attributes,
.is_visible = ds1621_attribute_visible
};
static const struct attribute_group *ds1621_groups[] = {
&ds1621_group,
NULL
};
__ATTRIBUTE_GROUPS(ds1621);
static int ds1621_probe(struct i2c_client *client,
const struct i2c_device_id *id)
@ -379,23 +375,12 @@ static int ds1621_probe(struct i2c_client *client,
/* Initialize the DS1621 chip */
ds1621_init_client(data, client);
hwmon_dev = hwmon_device_register_with_groups(&client->dev,
client->name, data,
ds1621_groups);
hwmon_dev = devm_hwmon_device_register_with_groups(&client->dev,
client->name, data,
ds1621_groups);
if (IS_ERR(hwmon_dev))
return PTR_ERR(hwmon_dev);
i2c_set_clientdata(client, hwmon_dev);
return 0;
}
static int ds1621_remove(struct i2c_client *client)
{
struct device *hwmon_dev = i2c_get_clientdata(client);
hwmon_device_unregister(hwmon_dev);
return 0;
}
@ -416,7 +401,6 @@ static struct i2c_driver ds1621_driver = {
.name = "ds1621",
},
.probe = ds1621_probe,
.remove = ds1621_remove,
.id_table = ds1621_id,
};