diff options
author | Pramod Gurav <pramod.gurav@smartplayin.com> | 2014-09-09 10:05:52 +0200 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2014-09-23 12:23:09 +0200 |
commit | 849a8c25c80a2cde824072813bf4aabbc79b8789 (patch) | |
tree | 69771f8abd0ffe174394bb8305584fef712a81d0 /drivers/pinctrl/pinctrl-xway.c | |
parent | pinctrl: imx: detect uninitialized pins (diff) | |
download | linux-849a8c25c80a2cde824072813bf4aabbc79b8789.tar.xz linux-849a8c25c80a2cde824072813bf4aabbc79b8789.zip |
pinctrl: lantiq: Release gpiochip resources in fail case
This patch releases gpiochip resources with of_gpiochip_remove
and gpiochip_remove in failure cases.
CC: John Crispin <blogic@openwrt.org>
CC: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Pramod Gurav <pramod.gurav@smartplayin.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/pinctrl-xway.c')
-rw-r--r-- | drivers/pinctrl/pinctrl-xway.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c index e66f4cae7633..37040ab42890 100644 --- a/drivers/pinctrl/pinctrl-xway.c +++ b/drivers/pinctrl/pinctrl-xway.c @@ -801,6 +801,7 @@ static int pinmux_xway_probe(struct platform_device *pdev) of_gpiochip_add(&xway_chip); ret = gpiochip_add(&xway_chip); if (ret) { + of_gpiochip_remove(&xway_chip); dev_err(&pdev->dev, "Failed to register gpio chip\n"); return ret; } @@ -822,6 +823,7 @@ static int pinmux_xway_probe(struct platform_device *pdev) /* register with the generic lantiq layer */ ret = ltq_pinctrl_register(pdev, &xway_info); if (ret) { + gpiochip_remove(&xway_chip); dev_err(&pdev->dev, "Failed to register pinctrl driver\n"); return ret; } |