summaryrefslogtreecommitdiffstats
path: root/drivers/gpio
diff options
context:
space:
mode:
authorAlexander Shiyan <shc_work@mail.ru>2013-04-11 19:23:22 +0200
committerLinus Walleij <linus.walleij@linaro.org>2013-04-11 19:33:54 +0200
commit2ce7c62d1b18dca13c715c6bc2eea17f723576ff (patch)
treedc2abc55393213a296e1ad6418922003677c4077 /drivers/gpio
parentgpio / ACPI: Handle ACPI events in accordance with the spec (diff)
downloadlinux-2ce7c62d1b18dca13c715c6bc2eea17f723576ff.tar.xz
linux-2ce7c62d1b18dca13c715c6bc2eea17f723576ff.zip
GPIO: gpio-generic: remove kfree() from bgpio_remove call
Memory for basic-mmio-gpio driver is allocated by the driver using it, whether it's the generic GPIO driver itself or another driver. In either case, the owner shall allocate and free the struct bgpio_chip it is using, preferably using a managed resource. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio')
-rw-r--r--drivers/gpio/gpio-generic.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/gpio/gpio-generic.c b/drivers/gpio/gpio-generic.c
index 42d470632aea..d2196bf73847 100644
--- a/drivers/gpio/gpio-generic.c
+++ b/drivers/gpio/gpio-generic.c
@@ -390,11 +390,7 @@ static int bgpio_setup_direction(struct bgpio_chip *bgc,
int bgpio_remove(struct bgpio_chip *bgc)
{
- int err = gpiochip_remove(&bgc->gc);
-
- kfree(bgc);
-
- return err;
+ return gpiochip_remove(&bgc->gc);
}
EXPORT_SYMBOL_GPL(bgpio_remove);