aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpiolib.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2015-06-02 02:05:42 -0400
committerIngo Molnar <mingo@kernel.org>2015-06-02 02:05:42 -0400
commitf407a8258610169cd8e975dba7f0b2824562014c (patch)
tree6c87b2d168a4665411a9e16b9f481599f2db25bc /drivers/gpio/gpiolib.c
parent960d447b94b22ceba286917056871d1dac8da697 (diff)
parentc46a024ea5eb0165114dbbc8c82c29b7bcf66e71 (diff)
Merge branch 'linus' into sched/core, to resolve conflict
Conflicts: arch/sparc/include/asm/topology_64.h Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/gpio/gpiolib.c')
-rw-r--r--drivers/gpio/gpiolib.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index 59eaa23767d8..6bc612b8a49f 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -53,6 +53,11 @@ static DEFINE_MUTEX(gpio_lookup_lock);
53static LIST_HEAD(gpio_lookup_list); 53static LIST_HEAD(gpio_lookup_list);
54LIST_HEAD(gpio_chips); 54LIST_HEAD(gpio_chips);
55 55
56
57static void gpiochip_free_hogs(struct gpio_chip *chip);
58static void gpiochip_irqchip_remove(struct gpio_chip *gpiochip);
59
60
56static inline void desc_set_label(struct gpio_desc *d, const char *label) 61static inline void desc_set_label(struct gpio_desc *d, const char *label)
57{ 62{
58 d->label = label; 63 d->label = label;
@@ -297,6 +302,7 @@ int gpiochip_add(struct gpio_chip *chip)
297 302
298err_remove_chip: 303err_remove_chip:
299 acpi_gpiochip_remove(chip); 304 acpi_gpiochip_remove(chip);
305 gpiochip_free_hogs(chip);
300 of_gpiochip_remove(chip); 306 of_gpiochip_remove(chip);
301 spin_lock_irqsave(&gpio_lock, flags); 307 spin_lock_irqsave(&gpio_lock, flags);
302 list_del(&chip->list); 308 list_del(&chip->list);
@@ -313,10 +319,6 @@ err_free_descs:
313} 319}
314EXPORT_SYMBOL_GPL(gpiochip_add); 320EXPORT_SYMBOL_GPL(gpiochip_add);
315 321
316/* Forward-declaration */
317static void gpiochip_irqchip_remove(struct gpio_chip *gpiochip);
318static void gpiochip_free_hogs(struct gpio_chip *chip);
319
320/** 322/**
321 * gpiochip_remove() - unregister a gpio_chip 323 * gpiochip_remove() - unregister a gpio_chip
322 * @chip: the chip to unregister 324 * @chip: the chip to unregister