hwmon: (max1111) Convert to use devm_ functions

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

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Acked-by: Jean Delvare <khali@linux-fr.org>
tirimbino
Guenter Roeck 13 years ago
parent 4a8ad25af5
commit 661f020f56
  1. 9
      drivers/hwmon/max1111.c

@ -168,7 +168,7 @@ static int __devinit max1111_probe(struct spi_device *spi)
if (err < 0) if (err < 0)
return err; return err;
data = kzalloc(sizeof(struct max1111_data), GFP_KERNEL); data = devm_kzalloc(&spi->dev, sizeof(struct max1111_data), GFP_KERNEL);
if (data == NULL) { if (data == NULL) {
dev_err(&spi->dev, "failed to allocate memory\n"); dev_err(&spi->dev, "failed to allocate memory\n");
return -ENOMEM; return -ENOMEM;
@ -176,7 +176,7 @@ static int __devinit max1111_probe(struct spi_device *spi)
err = setup_transfer(data); err = setup_transfer(data);
if (err) if (err)
goto err_free_data; return err;
mutex_init(&data->drvdata_lock); mutex_init(&data->drvdata_lock);
@ -186,7 +186,7 @@ static int __devinit max1111_probe(struct spi_device *spi)
err = sysfs_create_group(&spi->dev.kobj, &max1111_attr_group); err = sysfs_create_group(&spi->dev.kobj, &max1111_attr_group);
if (err) { if (err) {
dev_err(&spi->dev, "failed to create attribute group\n"); dev_err(&spi->dev, "failed to create attribute group\n");
goto err_free_data; return err;
} }
data->hwmon_dev = hwmon_device_register(&spi->dev); data->hwmon_dev = hwmon_device_register(&spi->dev);
@ -203,8 +203,6 @@ static int __devinit max1111_probe(struct spi_device *spi)
err_remove: err_remove:
sysfs_remove_group(&spi->dev.kobj, &max1111_attr_group); sysfs_remove_group(&spi->dev.kobj, &max1111_attr_group);
err_free_data:
kfree(data);
return err; return err;
} }
@ -215,7 +213,6 @@ static int __devexit max1111_remove(struct spi_device *spi)
hwmon_device_unregister(data->hwmon_dev); hwmon_device_unregister(data->hwmon_dev);
sysfs_remove_group(&spi->dev.kobj, &max1111_attr_group); sysfs_remove_group(&spi->dev.kobj, &max1111_attr_group);
mutex_destroy(&data->drvdata_lock); mutex_destroy(&data->drvdata_lock);
kfree(data);
return 0; return 0;
} }

Loading…
Cancel
Save