Commit 59da32d8dfd991fedc0bad197fb6f6a79bb9e712

Authored by Guenter Roeck
1 parent 7b52eefe16

hwmon: (emc2103) Convert to use devm_ functions

Convert to use devm_ functions to reduce code size and simplify the code.

Cc: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>

Showing 1 changed file with 4 additions and 6 deletions Side-by-side Diff

drivers/hwmon/emc2103.c
... ... @@ -590,7 +590,8 @@
590 590 if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_BYTE_DATA))
591 591 return -EIO;
592 592  
593   - data = kzalloc(sizeof(struct emc2103_data), GFP_KERNEL);
  593 + data = devm_kzalloc(&client->dev, sizeof(struct emc2103_data),
  594 + GFP_KERNEL);
594 595 if (!data)
595 596 return -ENOMEM;
596 597  
... ... @@ -608,7 +609,7 @@
608 609 if (status < 0) {
609 610 dev_dbg(&client->dev, "reg 0x%02x, err %d\n", REG_CONF1,
610 611 status);
611   - goto exit_free;
  612 + return status;
612 613 }
613 614  
614 615 /* detect current state of hardware */
... ... @@ -631,7 +632,7 @@
631 632 /* Register sysfs hooks */
632 633 status = sysfs_create_group(&client->dev.kobj, &emc2103_group);
633 634 if (status)
634   - goto exit_free;
  635 + return status;
635 636  
636 637 if (data->temp_count >= 3) {
637 638 status = sysfs_create_group(&client->dev.kobj,
... ... @@ -666,8 +667,6 @@
666 667 sysfs_remove_group(&client->dev.kobj, &emc2103_temp3_group);
667 668 exit_remove:
668 669 sysfs_remove_group(&client->dev.kobj, &emc2103_group);
669   -exit_free:
670   - kfree(data);
671 670 return status;
672 671 }
673 672  
... ... @@ -685,7 +684,6 @@
685 684  
686 685 sysfs_remove_group(&client->dev.kobj, &emc2103_group);
687 686  
688   - kfree(data);
689 687 return 0;
690 688 }
691 689