Browse Source

gpio: wm8350: Use devm_gpiochip_add_data() for gpio registration

Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Cc: patches@opensource.wolfsonmicro.com
Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Laxman Dewangan 9 years ago
parent
commit
61da4848a1
1 changed files with 2 additions and 10 deletions
  1. 2 10
      drivers/gpio/gpio-wm831x.c

+ 2 - 10
drivers/gpio/gpio-wm831x.c

@@ -259,7 +259,8 @@ static int wm831x_gpio_probe(struct platform_device *pdev)
 	else
 	else
 		wm831x_gpio->gpio_chip.base = -1;
 		wm831x_gpio->gpio_chip.base = -1;
 
 
-	ret = gpiochip_add_data(&wm831x_gpio->gpio_chip, wm831x_gpio);
+	ret = devm_gpiochip_add_data(&pdev->dev, &wm831x_gpio->gpio_chip,
+				     wm831x_gpio);
 	if (ret < 0) {
 	if (ret < 0) {
 		dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
 		dev_err(&pdev->dev, "Could not register gpiochip, %d\n", ret);
 		return ret;
 		return ret;
@@ -270,19 +271,10 @@ static int wm831x_gpio_probe(struct platform_device *pdev)
 	return ret;
 	return ret;
 }
 }
 
 
-static int wm831x_gpio_remove(struct platform_device *pdev)
-{
-	struct wm831x_gpio *wm831x_gpio = platform_get_drvdata(pdev);
-
-	gpiochip_remove(&wm831x_gpio->gpio_chip);
-	return 0;
-}
-
 static struct platform_driver wm831x_gpio_driver = {
 static struct platform_driver wm831x_gpio_driver = {
 	.driver.name	= "wm831x-gpio",
 	.driver.name	= "wm831x-gpio",
 	.driver.owner	= THIS_MODULE,
 	.driver.owner	= THIS_MODULE,
 	.probe		= wm831x_gpio_probe,
 	.probe		= wm831x_gpio_probe,
-	.remove		= wm831x_gpio_remove,
 };
 };
 
 
 static int __init wm831x_gpio_init(void)
 static int __init wm831x_gpio_init(void)