From 0d36dce0f1d15a9ca55f893b3aa5ce7c297e11c8 Mon Sep 17 00:00:00 2001 From: Guenter Roeck Date: Thu, 11 Jul 2013 22:55:51 -0700 Subject: 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 --- drivers/hwmon/ds1621.c | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) (limited to 'drivers/hwmon/ds1621.c') diff --git a/drivers/hwmon/ds1621.c b/drivers/hwmon/ds1621.c index 595f4ef87100..5e398c98db2e 100644 --- a/drivers/hwmon/ds1621.c +++ b/drivers/hwmon/ds1621.c @@ -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, }; -- cgit v1.2.3