diff options
author | Guenter Roeck <linux@roeck-us.net> | 2012-06-02 12:58:12 -0400 |
---|---|---|
committer | Guenter Roeck <linux@roeck-us.net> | 2012-09-24 00:08:31 -0400 |
commit | a8dd946c420781fd7a70fec8b75e0daf67c4a681 (patch) | |
tree | a4412cd303f73e6c33af4af97b0ea55b556e6710 /drivers/hwmon/lm95245.c | |
parent | 1487bf70c1b123469893b5dc6d910ef21f59d2f7 (diff) |
hwmon: (lm95245) Convert to use devm_ functions
Convert to use devm_ functions to reduce code size and simplify the code.
Cc: Alexander Stein <alexander.stein@systec-electronic.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'drivers/hwmon/lm95245.c')
-rw-r--r-- | drivers/hwmon/lm95245.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/drivers/hwmon/lm95245.c b/drivers/hwmon/lm95245.c index 9a46c106a240..2915fd908364 100644 --- a/drivers/hwmon/lm95245.c +++ b/drivers/hwmon/lm95245.c | |||
@@ -462,11 +462,10 @@ static int lm95245_probe(struct i2c_client *new_client, | |||
462 | struct lm95245_data *data; | 462 | struct lm95245_data *data; |
463 | int err; | 463 | int err; |
464 | 464 | ||
465 | data = kzalloc(sizeof(struct lm95245_data), GFP_KERNEL); | 465 | data = devm_kzalloc(&new_client->dev, sizeof(struct lm95245_data), |
466 | if (!data) { | 466 | GFP_KERNEL); |
467 | err = -ENOMEM; | 467 | if (!data) |
468 | goto exit; | 468 | return -ENOMEM; |
469 | } | ||
470 | 469 | ||
471 | i2c_set_clientdata(new_client, data); | 470 | i2c_set_clientdata(new_client, data); |
472 | mutex_init(&data->update_lock); | 471 | mutex_init(&data->update_lock); |
@@ -477,7 +476,7 @@ static int lm95245_probe(struct i2c_client *new_client, | |||
477 | /* Register sysfs hooks */ | 476 | /* Register sysfs hooks */ |
478 | err = sysfs_create_group(&new_client->dev.kobj, &lm95245_group); | 477 | err = sysfs_create_group(&new_client->dev.kobj, &lm95245_group); |
479 | if (err) | 478 | if (err) |
480 | goto exit_free; | 479 | return err; |
481 | 480 | ||
482 | data->hwmon_dev = hwmon_device_register(&new_client->dev); | 481 | data->hwmon_dev = hwmon_device_register(&new_client->dev); |
483 | if (IS_ERR(data->hwmon_dev)) { | 482 | if (IS_ERR(data->hwmon_dev)) { |
@@ -489,9 +488,6 @@ static int lm95245_probe(struct i2c_client *new_client, | |||
489 | 488 | ||
490 | exit_remove_files: | 489 | exit_remove_files: |
491 | sysfs_remove_group(&new_client->dev.kobj, &lm95245_group); | 490 | sysfs_remove_group(&new_client->dev.kobj, &lm95245_group); |
492 | exit_free: | ||
493 | kfree(data); | ||
494 | exit: | ||
495 | return err; | 491 | return err; |
496 | } | 492 | } |
497 | 493 | ||
@@ -502,7 +498,6 @@ static int lm95245_remove(struct i2c_client *client) | |||
502 | hwmon_device_unregister(data->hwmon_dev); | 498 | hwmon_device_unregister(data->hwmon_dev); |
503 | sysfs_remove_group(&client->dev.kobj, &lm95245_group); | 499 | sysfs_remove_group(&client->dev.kobj, &lm95245_group); |
504 | 500 | ||
505 | kfree(data); | ||
506 | return 0; | 501 | return 0; |
507 | } | 502 | } |
508 | 503 | ||