Commit 140849e105fd0aadab035923f4cb454ce0518887

Authored by Guenter Roeck
1 parent 144d2b9985

hwmon: (w83792d) 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>

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

drivers/hwmon/w83792d.c
... ... @@ -1422,11 +1422,9 @@
1422 1422 struct device *dev = &client->dev;
1423 1423 int i, val1, err;
1424 1424  
1425   - data = kzalloc(sizeof(struct w83792d_data), GFP_KERNEL);
1426   - if (!data) {
1427   - err = -ENOMEM;
1428   - goto ERROR0;
1429   - }
  1425 + data = devm_kzalloc(dev, sizeof(struct w83792d_data), GFP_KERNEL);
  1426 + if (!data)
  1427 + return -ENOMEM;
1430 1428  
1431 1429 i2c_set_clientdata(client, data);
1432 1430 data->valid = 0;
... ... @@ -1434,7 +1432,7 @@
1434 1432  
1435 1433 err = w83792d_detect_subclients(client);
1436 1434 if (err)
1437   - goto ERROR1;
  1435 + return err;
1438 1436  
1439 1437 /* Initialize the chip */
1440 1438 w83792d_init_client(client);
... ... @@ -1448,7 +1446,7 @@
1448 1446 /* Register sysfs hooks */
1449 1447 err = sysfs_create_group(&dev->kobj, &w83792d_group);
1450 1448 if (err)
1451   - goto ERROR3;
  1449 + goto exit_i2c_unregister;
1452 1450  
1453 1451 /*
1454 1452 * Read GPIO enable register to check if pins for fan 4,5 are used as
1455 1453  
... ... @@ -1493,14 +1491,11 @@
1493 1491 sysfs_remove_group(&dev->kobj, &w83792d_group);
1494 1492 for (i = 0; i < ARRAY_SIZE(w83792d_group_fan); i++)
1495 1493 sysfs_remove_group(&dev->kobj, &w83792d_group_fan[i]);
1496   -ERROR3:
  1494 +exit_i2c_unregister:
1497 1495 if (data->lm75[0] != NULL)
1498 1496 i2c_unregister_device(data->lm75[0]);
1499 1497 if (data->lm75[1] != NULL)
1500 1498 i2c_unregister_device(data->lm75[1]);
1501   -ERROR1:
1502   - kfree(data);
1503   -ERROR0:
1504 1499 return err;
1505 1500 }
1506 1501  
... ... @@ -1521,7 +1516,6 @@
1521 1516 if (data->lm75[1] != NULL)
1522 1517 i2c_unregister_device(data->lm75[1]);
1523 1518  
1524   - kfree(data);
1525 1519 return 0;
1526 1520 }
1527 1521