Commit 59da32d8dfd991fedc0bad197fb6f6a79bb9e712
1 parent
7b52eefe16
Exists in
master
and in
20 other branches
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 |