Skip to content

Commit

Permalink
hwmon: (sht21) Convert to use devm_ functions
Browse files Browse the repository at this point in the history
Convert to use devm_ functions to reduce code size and simplify the code.

Cc: Jonathan Cameron <jic23@cam.ac.uk>
Cc: Urs Fleisch <urs.fleisch@sensirion.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
  • Loading branch information
Guenter Roeck committed Sep 24, 2012
1 parent 38fe756 commit a844af1
Showing 1 changed file with 4 additions and 9 deletions.
13 changes: 4 additions & 9 deletions drivers/hwmon/sht21.c
Original file line number Diff line number Diff line change
Expand Up @@ -199,19 +199,18 @@ static int __devinit sht21_probe(struct i2c_client *client,
return -ENODEV;
}

sht21 = kzalloc(sizeof(*sht21), GFP_KERNEL);
if (!sht21) {
dev_dbg(&client->dev, "kzalloc failed\n");
sht21 = devm_kzalloc(&client->dev, sizeof(*sht21), GFP_KERNEL);
if (!sht21)
return -ENOMEM;
}

i2c_set_clientdata(client, sht21);

mutex_init(&sht21->lock);

err = sysfs_create_group(&client->dev.kobj, &sht21_attr_group);
if (err) {
dev_dbg(&client->dev, "could not create sysfs files\n");
goto fail_free;
return err;
}
sht21->hwmon_dev = hwmon_device_register(&client->dev);
if (IS_ERR(sht21->hwmon_dev)) {
Expand All @@ -226,9 +225,6 @@ static int __devinit sht21_probe(struct i2c_client *client,

fail_remove_sysfs:
sysfs_remove_group(&client->dev.kobj, &sht21_attr_group);
fail_free:
kfree(sht21);

return err;
}

Expand All @@ -242,7 +238,6 @@ static int __devexit sht21_remove(struct i2c_client *client)

hwmon_device_unregister(sht21->hwmon_dev);
sysfs_remove_group(&client->dev.kobj, &sht21_attr_group);
kfree(sht21);

return 0;
}
Expand Down

0 comments on commit a844af1

Please sign in to comment.