From 49153b092ceb099a5f38a645e3c40b4bd4e28a82 Mon Sep 17 00:00:00 2001 From: Axel Lin Date: Sat, 14 Jun 2014 14:50:50 +0800 Subject: [PATCH] hwmon: (gpio-fan) Convert to devm_hwmon_device_register_with_groups This simplifies the code a bit and also ensures the attribute groups are properly removed from sysfs when unload the module. Signed-off-by: Axel Lin Signed-off-by: Guenter Roeck --- drivers/hwmon/gpio-fan.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/drivers/hwmon/gpio-fan.c b/drivers/hwmon/gpio-fan.c index 2566c43dd1e9..a43e5b004eb8 100644 --- a/drivers/hwmon/gpio-fan.c +++ b/drivers/hwmon/gpio-fan.c @@ -537,9 +537,10 @@ static int gpio_fan_probe(struct platform_device *pdev) } /* Make this driver part of hwmon class. */ - fan_data->hwmon_dev = hwmon_device_register_with_groups(&pdev->dev, - "gpio_fan", fan_data, - gpio_fan_groups); + fan_data->hwmon_dev = + devm_hwmon_device_register_with_groups(&pdev->dev, + "gpio_fan", fan_data, + gpio_fan_groups); if (IS_ERR(fan_data->hwmon_dev)) return PTR_ERR(fan_data->hwmon_dev); @@ -548,15 +549,6 @@ static int gpio_fan_probe(struct platform_device *pdev) return 0; } -static int gpio_fan_remove(struct platform_device *pdev) -{ - struct gpio_fan_data *fan_data = platform_get_drvdata(pdev); - - hwmon_device_unregister(fan_data->hwmon_dev); - - return 0; -} - #ifdef CONFIG_PM_SLEEP static int gpio_fan_suspend(struct device *dev) { @@ -588,7 +580,6 @@ static SIMPLE_DEV_PM_OPS(gpio_fan_pm, gpio_fan_suspend, gpio_fan_resume); static struct platform_driver gpio_fan_driver = { .probe = gpio_fan_probe, - .remove = gpio_fan_remove, .driver = { .name = "gpio-fan", .pm = GPIO_FAN_PM,