Input: synaptics_rmi4 - use devm_device_add_group() for attributes in F01
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 20 Jul 2017 00:24:35 +0000 (17:24 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 22 Jul 2017 09:59:23 +0000 (11:59 +0200)
Now that we have proper managed API to create device attributes, let's
start using it instead of the manual unwinding.

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/input/rmi4/rmi_f01.c

index 7f7e9176f7ea26b34b03a501722a30cec70241e0..6dca3c0fbb4a0f5607a04588e4b4cf79e40caa10 100644 (file)
@@ -570,18 +570,14 @@ static int rmi_f01_probe(struct rmi_function *fn)
 
        dev_set_drvdata(&fn->dev, f01);
 
-       error = sysfs_create_group(&fn->rmi_dev->dev.kobj, &rmi_f01_attr_group);
+       error = devm_device_add_group(&fn->rmi_dev->dev, &rmi_f01_attr_group);
        if (error)
-               dev_warn(&fn->dev, "Failed to create sysfs group: %d\n", error);
+               dev_warn(&fn->dev,
+                        "Failed to create attribute group: %d\n", error);
 
        return 0;
 }
 
-static void rmi_f01_remove(struct rmi_function *fn)
-{
-       sysfs_remove_group(&fn->rmi_dev->dev.kobj, &rmi_f01_attr_group);
-}
-
 static int rmi_f01_config(struct rmi_function *fn)
 {
        struct f01_data *f01 = dev_get_drvdata(&fn->dev);
@@ -721,7 +717,6 @@ struct rmi_function_handler rmi_f01_handler = {
        },
        .func           = 0x01,
        .probe          = rmi_f01_probe,
-       .remove         = rmi_f01_remove,
        .config         = rmi_f01_config,
        .attention      = rmi_f01_attention,
        .suspend        = rmi_f01_suspend,