diff options
author | Guenter Roeck <linux@roeck-us.net> | 2014-04-04 18:01:32 +0200 |
---|---|---|
committer | Jean Delvare <jdelvare@suse.de> | 2014-04-04 18:01:32 +0200 |
commit | 0dcb28a1520f1a058058886b5c7510bb1cc0ef60 (patch) | |
tree | ee1918e053970f6c487b1c884393aa68dd6804bd | |
parent | hwmon: (f71805f) Fix author's address (diff) | |
download | linux-0dcb28a1520f1a058058886b5c7510bb1cc0ef60.tar.xz linux-0dcb28a1520f1a058058886b5c7510bb1cc0ef60.zip |
hwmon: (lm63) Add additional sysfs group for temp2_type attribute
With the new hwmon API, we can only add groups of attributes, not individual
attributes. To prepare for the use of the new API, add an additional sensor
group for the temp2_type attribute and register it with sysfs_create_group
instead of device_create_file.
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Jean Delvare <jdelvare@suse.de>
-rw-r--r-- | drivers/hwmon/lm63.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/drivers/hwmon/lm63.c b/drivers/hwmon/lm63.c index b4ad598feb6c..7ff4fc7c6dbd 100644 --- a/drivers/hwmon/lm63.c +++ b/drivers/hwmon/lm63.c @@ -915,6 +915,15 @@ static struct attribute *lm63_attributes[] = { NULL }; +static struct attribute *lm63_attributes_temp2_type[] = { + &dev_attr_temp2_type.attr, + NULL +}; + +static const struct attribute_group lm63_group_temp2_type = { + .attrs = lm63_attributes_temp2_type, +}; + static struct attribute *lm63_attributes_extra_lut[] = { &sensor_dev_attr_pwm1_auto_point9_pwm.dev_attr.attr, &sensor_dev_attr_pwm1_auto_point9_temp.dev_attr.attr, @@ -1133,7 +1142,8 @@ static int lm63_probe(struct i2c_client *client, goto exit_remove_files; } if (data->kind == lm96163) { - err = device_create_file(&client->dev, &dev_attr_temp2_type); + err = sysfs_create_group(&client->dev.kobj, + &lm63_group_temp2_type); if (err) goto exit_remove_files; @@ -1155,7 +1165,7 @@ exit_remove_files: sysfs_remove_group(&client->dev.kobj, &lm63_group); sysfs_remove_group(&client->dev.kobj, &lm63_group_fan1); if (data->kind == lm96163) { - device_remove_file(&client->dev, &dev_attr_temp2_type); + sysfs_remove_group(&client->dev.kobj, &lm63_group_temp2_type); sysfs_remove_group(&client->dev.kobj, &lm63_group_extra_lut); } return err; @@ -1169,7 +1179,7 @@ static int lm63_remove(struct i2c_client *client) sysfs_remove_group(&client->dev.kobj, &lm63_group); sysfs_remove_group(&client->dev.kobj, &lm63_group_fan1); if (data->kind == lm96163) { - device_remove_file(&client->dev, &dev_attr_temp2_type); + sysfs_remove_group(&client->dev.kobj, &lm63_group_temp2_type); sysfs_remove_group(&client->dev.kobj, &lm63_group_extra_lut); } |