Input: elants_i2c - use managed devm_device_add_group
authorAndi Shyti <andi@etezian.org>
Fri, 29 Sep 2017 23:37:33 +0000 (16:37 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 29 Sep 2017 23:51:02 +0000 (16:51 -0700)
Commit 57b8ff070f98 ("driver core: add devm_device_add_group() and
friends") has added the managed version for creating sysfs group files.

Use devm_device_add_group instead of sysfs_create_group and remove the
action that cleans the sysfs file when exiting the driver.

Signed-off-by: Andi Shyti <andi@etezian.org>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/touchscreen/elants_i2c.c

index 0f4cda7282a2c72779dc8cb131945ffa97200303..e102d7764bc25e50649e34e229afda59552dfe8b 100644 (file)
@@ -1070,13 +1070,6 @@ static const struct attribute_group elants_attribute_group = {
        .attrs = elants_attributes,
 };
 
-static void elants_i2c_remove_sysfs_group(void *_data)
-{
-       struct elants_data *ts = _data;
-
-       sysfs_remove_group(&ts->client->dev.kobj, &elants_attribute_group);
-}
-
 static int elants_i2c_power_on(struct elants_data *ts)
 {
        int error;
@@ -1289,23 +1282,13 @@ static int elants_i2c_probe(struct i2c_client *client,
        if (!client->dev.of_node)
                device_init_wakeup(&client->dev, true);
 
-       error = sysfs_create_group(&client->dev.kobj, &elants_attribute_group);
+       error = devm_device_add_group(&client->dev, &elants_attribute_group);
        if (error) {
                dev_err(&client->dev, "failed to create sysfs attributes: %d\n",
                        error);
                return error;
        }
 
-       error = devm_add_action(&client->dev,
-                               elants_i2c_remove_sysfs_group, ts);
-       if (error) {
-               elants_i2c_remove_sysfs_group(ts);
-               dev_err(&client->dev,
-                       "Failed to add sysfs cleanup action: %d\n",
-                       error);
-               return error;
-       }
-
        return 0;
 }