hwmon: (lm90) Always use the dev variable in the probe function
[firefly-linux-kernel-4.4.55.git] / drivers / hwmon / lm90.c
index 8b8f3aa49726873b89267ebe45f4e145eab2c7bb..07ffd1061e353fbebfa18846f309743b8078aa0b 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * lm90.c - Part of lm_sensors, Linux kernel modules for hardware
  *          monitoring
- * Copyright (C) 2003-2010  Jean Delvare <khali@linux-fr.org>
+ * Copyright (C) 2003-2010  Jean Delvare <jdelvare@suse.de>
  *
  * Based on the lm83 driver. The LM90 is a sensor chip made by National
  * Semiconductor. It reports up to two temperatures (its own plus up to
@@ -1057,6 +1057,15 @@ static const struct attribute_group lm90_group = {
        .attrs = lm90_attributes,
 };
 
+static struct attribute *lm90_temp2_offset_attributes[] = {
+       &sensor_dev_attr_temp2_offset.dev_attr.attr,
+       NULL
+};
+
+static const struct attribute_group lm90_temp2_offset_group = {
+       .attrs = lm90_temp2_offset_attributes,
+};
+
 /*
  * Additional attributes for devices with emergency sensors
  */
@@ -1404,7 +1413,7 @@ static void lm90_remove_files(struct i2c_client *client, struct lm90_data *data)
        if (data->flags & LM90_HAVE_EMERGENCY)
                sysfs_remove_group(&dev->kobj, &lm90_emergency_group);
        if (data->flags & LM90_HAVE_OFFSET)
-               device_remove_file(dev, &sensor_dev_attr_temp2_offset.dev_attr);
+               sysfs_remove_group(&dev->kobj, &lm90_temp2_offset_group);
        device_remove_file(dev, &dev_attr_pec);
        sysfs_remove_group(&dev->kobj, &lm90_group);
 }
@@ -1527,12 +1536,11 @@ static int lm90_probe(struct i2c_client *client,
 
        err = regulator_enable(regulator);
        if (err < 0) {
-               dev_err(&client->dev,
-                       "Failed to enable regulator: %d\n", err);
+               dev_err(dev, "Failed to enable regulator: %d\n", err);
                return err;
        }
 
-       data = devm_kzalloc(&client->dev, sizeof(struct lm90_data), GFP_KERNEL);
+       data = devm_kzalloc(dev, sizeof(struct lm90_data), GFP_KERNEL);
        if (!data)
                return -ENOMEM;
 
@@ -1574,8 +1582,7 @@ static int lm90_probe(struct i2c_client *client,
                        goto exit_remove_files;
        }
        if (data->flags & LM90_HAVE_OFFSET) {
-               err = device_create_file(dev,
-                                       &sensor_dev_attr_temp2_offset.dev_attr);
+               err = sysfs_create_group(&dev->kobj, &lm90_temp2_offset_group);
                if (err)
                        goto exit_remove_files;
        }
@@ -1679,6 +1686,6 @@ static struct i2c_driver lm90_driver = {
 
 module_i2c_driver(lm90_driver);
 
-MODULE_AUTHOR("Jean Delvare <khali@linux-fr.org>");
+MODULE_AUTHOR("Jean Delvare <jdelvare@suse.de>");
 MODULE_DESCRIPTION("LM90/ADM1032 driver");
 MODULE_LICENSE("GPL");