OSDN Git Service

Input: gpio_keys - use devm_device_add_group() for attributes
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 20 Jul 2017 00:24:34 +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/keyboard/gpio_keys.c

index da3d362..5a08bbc 100644 (file)
@@ -814,7 +814,7 @@ static int gpio_keys_probe(struct platform_device *pdev)
 
        fwnode_handle_put(child);
 
-       error = sysfs_create_group(&dev->kobj, &gpio_keys_attr_group);
+       error = devm_device_add_group(dev, &gpio_keys_attr_group);
        if (error) {
                dev_err(dev, "Unable to export keys/switches, error: %d\n",
                        error);
@@ -825,23 +825,12 @@ static int gpio_keys_probe(struct platform_device *pdev)
        if (error) {
                dev_err(dev, "Unable to register input device, error: %d\n",
                        error);
-               goto err_remove_group;
+               return error;
        }
 
        device_init_wakeup(dev, wakeup);
 
        return 0;
-
-err_remove_group:
-       sysfs_remove_group(&dev->kobj, &gpio_keys_attr_group);
-       return error;
-}
-
-static int gpio_keys_remove(struct platform_device *pdev)
-{
-       sysfs_remove_group(&pdev->dev.kobj, &gpio_keys_attr_group);
-
-       return 0;
 }
 
 static int __maybe_unused gpio_keys_suspend(struct device *dev)
@@ -897,7 +886,6 @@ static SIMPLE_DEV_PM_OPS(gpio_keys_pm_ops, gpio_keys_suspend, gpio_keys_resume);
 
 static struct platform_driver gpio_keys_device_driver = {
        .probe          = gpio_keys_probe,
-       .remove         = gpio_keys_remove,
        .driver         = {
                .name   = "gpio-keys",
                .pm     = &gpio_keys_pm_ops,