aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon/adt7470.c
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2012-06-02 12:58:01 -0400
committerGuenter Roeck <linux@roeck-us.net>2012-09-24 00:08:30 -0400
commit9cc7dcc5238308250eb3ca4314f6423bd6f54ef0 (patch)
treebf836b90ed9976d1f202e2a8ded8c99928fc9cda /drivers/hwmon/adt7470.c
parent0880830096ee314c953d4bd5d017e27589f0e830 (diff)
hwmon: (adt7470) 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>
Diffstat (limited to 'drivers/hwmon/adt7470.c')
-rw-r--r--drivers/hwmon/adt7470.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/drivers/hwmon/adt7470.c b/drivers/hwmon/adt7470.c
index 54ec890521ff..39ecb1a3b9ef 100644
--- a/drivers/hwmon/adt7470.c
+++ b/drivers/hwmon/adt7470.c
@@ -1256,11 +1256,10 @@ static int adt7470_probe(struct i2c_client *client,
1256 struct adt7470_data *data; 1256 struct adt7470_data *data;
1257 int err; 1257 int err;
1258 1258
1259 data = kzalloc(sizeof(struct adt7470_data), GFP_KERNEL); 1259 data = devm_kzalloc(&client->dev, sizeof(struct adt7470_data),
1260 if (!data) { 1260 GFP_KERNEL);
1261 err = -ENOMEM; 1261 if (!data)
1262 goto exit; 1262 return -ENOMEM;
1263 }
1264 1263
1265 data->num_temp_sensors = -1; 1264 data->num_temp_sensors = -1;
1266 data->auto_update_interval = AUTO_UPDATE_INTERVAL; 1265 data->auto_update_interval = AUTO_UPDATE_INTERVAL;
@@ -1277,7 +1276,7 @@ static int adt7470_probe(struct i2c_client *client,
1277 data->attrs.attrs = adt7470_attr; 1276 data->attrs.attrs = adt7470_attr;
1278 err = sysfs_create_group(&client->dev.kobj, &data->attrs); 1277 err = sysfs_create_group(&client->dev.kobj, &data->attrs);
1279 if (err) 1278 if (err)
1280 goto exit_free; 1279 return err;
1281 1280
1282 data->hwmon_dev = hwmon_device_register(&client->dev); 1281 data->hwmon_dev = hwmon_device_register(&client->dev);
1283 if (IS_ERR(data->hwmon_dev)) { 1282 if (IS_ERR(data->hwmon_dev)) {
@@ -1299,9 +1298,6 @@ exit_unregister:
1299 hwmon_device_unregister(data->hwmon_dev); 1298 hwmon_device_unregister(data->hwmon_dev);
1300exit_remove: 1299exit_remove:
1301 sysfs_remove_group(&client->dev.kobj, &data->attrs); 1300 sysfs_remove_group(&client->dev.kobj, &data->attrs);
1302exit_free:
1303 kfree(data);
1304exit:
1305 return err; 1301 return err;
1306} 1302}
1307 1303
@@ -1313,7 +1309,6 @@ static int adt7470_remove(struct i2c_client *client)
1313 wait_for_completion(&data->auto_update_stop); 1309 wait_for_completion(&data->auto_update_stop);
1314 hwmon_device_unregister(data->hwmon_dev); 1310 hwmon_device_unregister(data->hwmon_dev);
1315 sysfs_remove_group(&client->dev.kobj, &data->attrs); 1311 sysfs_remove_group(&client->dev.kobj, &data->attrs);
1316 kfree(data);
1317 return 0; 1312 return 0;
1318} 1313}
1319 1314