gpio: tc3589x: Use devm_gpiochip_add_data() for gpio registration
authorLaxman Dewangan <ldewangan@nvidia.com>
Mon, 22 Feb 2016 12:13:28 +0000 (17:43 +0530)
committerLaxman Dewangan <ldewangan@nvidia.com>
Tue, 23 Feb 2016 15:05:45 +0000 (20:35 +0530)
Use devm_gpiochip_add_data() for GPIO registration and remove the
need of driver callback .remove.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
drivers/gpio/gpio-tc3589x.c

index 05a27ec55addf986af28552695bad4b03a1c68b1..4f566e6b81f1210172e4d82e1da8a6ad741aa97e 100644 (file)
@@ -272,7 +272,8 @@ static int tc3589x_gpio_probe(struct platform_device *pdev)
                return ret;
        }
 
-       ret = gpiochip_add_data(&tc3589x_gpio->chip, tc3589x_gpio);
+       ret = devm_gpiochip_add_data(&pdev->dev, &tc3589x_gpio->chip,
+                                    tc3589x_gpio);
        if (ret) {
                dev_err(&pdev->dev, "unable to add gpiochip: %d\n", ret);
                return ret;
@@ -299,20 +300,10 @@ static int tc3589x_gpio_probe(struct platform_device *pdev)
        return 0;
 }
 
-static int tc3589x_gpio_remove(struct platform_device *pdev)
-{
-       struct tc3589x_gpio *tc3589x_gpio = platform_get_drvdata(pdev);
-
-       gpiochip_remove(&tc3589x_gpio->chip);
-
-       return 0;
-}
-
 static struct platform_driver tc3589x_gpio_driver = {
        .driver.name    = "tc3589x-gpio",
        .driver.owner   = THIS_MODULE,
        .probe          = tc3589x_gpio_probe,
-       .remove         = tc3589x_gpio_remove,
 };
 
 static int __init tc3589x_gpio_init(void)