aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2012-06-02 12:58:01 -0400
committerGuenter Roeck <linux@roeck-us.net>2012-09-24 00:08:30 -0400
commit65ec17b0d5a5351846e3503d5599e1630e57ffc4 (patch)
tree55035ab41347412249fc9d7af9b809957c25a91b
parent33fd2b84c94f978e661c20267548b736d84f4645 (diff)
hwmon: (adt7411) Convert to use devm_ functions
Convert to use devm_ functions to reduce code size and simplify the code. Cc: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-rw-r--r--drivers/hwmon/adt7411.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/hwmon/adt7411.c b/drivers/hwmon/adt7411.c
index 71bacc56e138..fe72c69a2d68 100644
--- a/drivers/hwmon/adt7411.c
+++ b/drivers/hwmon/adt7411.c
@@ -283,7 +283,7 @@ static int __devinit adt7411_probe(struct i2c_client *client,
283 struct adt7411_data *data; 283 struct adt7411_data *data;
284 int ret; 284 int ret;
285 285
286 data = kzalloc(sizeof(*data), GFP_KERNEL); 286 data = devm_kzalloc(&client->dev, sizeof(*data), GFP_KERNEL);
287 if (!data) 287 if (!data)
288 return -ENOMEM; 288 return -ENOMEM;
289 289
@@ -294,14 +294,14 @@ static int __devinit adt7411_probe(struct i2c_client *client,
294 ret = adt7411_modify_bit(client, ADT7411_REG_CFG1, 294 ret = adt7411_modify_bit(client, ADT7411_REG_CFG1,
295 ADT7411_CFG1_START_MONITOR, 1); 295 ADT7411_CFG1_START_MONITOR, 1);
296 if (ret < 0) 296 if (ret < 0)
297 goto exit_free; 297 return ret;
298 298
299 /* force update on first occasion */ 299 /* force update on first occasion */
300 data->next_update = jiffies; 300 data->next_update = jiffies;
301 301
302 ret = sysfs_create_group(&client->dev.kobj, &adt7411_attr_grp); 302 ret = sysfs_create_group(&client->dev.kobj, &adt7411_attr_grp);
303 if (ret) 303 if (ret)
304 goto exit_free; 304 return ret;
305 305
306 data->hwmon_dev = hwmon_device_register(&client->dev); 306 data->hwmon_dev = hwmon_device_register(&client->dev);
307 if (IS_ERR(data->hwmon_dev)) { 307 if (IS_ERR(data->hwmon_dev)) {
@@ -315,8 +315,6 @@ static int __devinit adt7411_probe(struct i2c_client *client,
315 315
316 exit_remove: 316 exit_remove:
317 sysfs_remove_group(&client->dev.kobj, &adt7411_attr_grp); 317 sysfs_remove_group(&client->dev.kobj, &adt7411_attr_grp);
318 exit_free:
319 kfree(data);
320 return ret; 318 return ret;
321} 319}
322 320
@@ -326,7 +324,6 @@ static int __devexit adt7411_remove(struct i2c_client *client)
326 324
327 hwmon_device_unregister(data->hwmon_dev); 325 hwmon_device_unregister(data->hwmon_dev);
328 sysfs_remove_group(&client->dev.kobj, &adt7411_attr_grp); 326 sysfs_remove_group(&client->dev.kobj, &adt7411_attr_grp);
329 kfree(data);
330 return 0; 327 return 0;
331} 328}
332 329