From 2160ff2eaa94ddb117c76f56e566ed694cd53a47 Mon Sep 17 00:00:00 2001 From: Samuel Ortiz Date: Fri, 5 Mar 2010 17:14:01 +0100 Subject: [PATCH] --- yaml --- r: 186934 b: refs/heads/master c: 8e7aafe41be2a7cd5c181ed68876e9ec55ccdba7 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/gpio/sch_gpio.c | 19 ++++++++++++++++--- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index f6a87fcda9a0..6ae2044d2c2d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: be9b06b2d80fe661491138c6993f944babb26260 +refs/heads/master: 8e7aafe41be2a7cd5c181ed68876e9ec55ccdba7 diff --git a/trunk/drivers/gpio/sch_gpio.c b/trunk/drivers/gpio/sch_gpio.c index 761071ae3596..583521352c16 100644 --- a/trunk/drivers/gpio/sch_gpio.c +++ b/trunk/drivers/gpio/sch_gpio.c @@ -229,7 +229,10 @@ static int __devinit sch_gpio_probe(struct platform_device *pdev) return 0; err_sch_gpio_resume: - gpiochip_remove(&sch_gpio_core); + err = gpiochip_remove(&sch_gpio_core); + if (err) + dev_err(&pdev->dev, "%s failed, %d\n", + "gpiochip_remove()", err); err_sch_gpio_core: release_region(res->start, resource_size(res)); @@ -242,13 +245,23 @@ static int __devexit sch_gpio_remove(struct platform_device *pdev) { struct resource *res; if (gpio_ba) { - gpiochip_remove(&sch_gpio_core); - gpiochip_remove(&sch_gpio_resume); + int err; + + err = gpiochip_remove(&sch_gpio_core); + if (err) + dev_err(&pdev->dev, "%s failed, %d\n", + "gpiochip_remove()", err); + err = gpiochip_remove(&sch_gpio_resume); + if (err) + dev_err(&pdev->dev, "%s failed, %d\n", + "gpiochip_remove()", err); res = platform_get_resource(pdev, IORESOURCE_IO, 0); release_region(res->start, resource_size(res)); gpio_ba = 0; + + return err; } return 0;