Commit c2433827 authored by Dmitry Torokhov's avatar Dmitry Torokhov

Input: cyapa - switch to using devm_device_add_group()

Instead of installing custom devm cleanup action to remove attribute
groups on failure, let's use the dedicated devm API.
Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent 2e75cfaa
...@@ -1238,13 +1238,6 @@ static const struct attribute_group cyapa_sysfs_group = { ...@@ -1238,13 +1238,6 @@ static const struct attribute_group cyapa_sysfs_group = {
.attrs = cyapa_sysfs_entries, .attrs = cyapa_sysfs_entries,
}; };
static void cyapa_remove_sysfs_group(void *data)
{
struct cyapa *cyapa = data;
sysfs_remove_group(&cyapa->client->dev.kobj, &cyapa_sysfs_group);
}
static void cyapa_disable_regulator(void *data) static void cyapa_disable_regulator(void *data)
{ {
struct cyapa *cyapa = data; struct cyapa *cyapa = data;
...@@ -1312,19 +1305,12 @@ static int cyapa_probe(struct i2c_client *client, ...@@ -1312,19 +1305,12 @@ static int cyapa_probe(struct i2c_client *client,
return error; return error;
} }
error = sysfs_create_group(&dev->kobj, &cyapa_sysfs_group); error = devm_device_add_group(dev, &cyapa_sysfs_group);
if (error) { if (error) {
dev_err(dev, "failed to create sysfs entries: %d\n", error); dev_err(dev, "failed to create sysfs entries: %d\n", error);
return error; return error;
} }
error = devm_add_action(dev, cyapa_remove_sysfs_group, cyapa);
if (error) {
cyapa_remove_sysfs_group(cyapa);
dev_err(dev, "failed to add sysfs cleanup action: %d\n", error);
return error;
}
error = cyapa_prepare_wakeup_controls(cyapa); error = cyapa_prepare_wakeup_controls(cyapa);
if (error) { if (error) {
dev_err(dev, "failed to prepare wakeup controls: %d\n", error); dev_err(dev, "failed to prepare wakeup controls: %d\n", error);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment