Blackfin arch: Add code to free gpio when shutdown irq

Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>

diff --git a/arch/blackfin/mach-common/ints-priority.c b/arch/blackfin/mach-common/ints-priority.c
index f7e35e7..efa27cb 100644
--- a/arch/blackfin/mach-common/ints-priority.c
+++ b/arch/blackfin/mach-common/ints-priority.c
@@ -428,8 +428,11 @@
 
 static void bfin_gpio_irq_shutdown(unsigned int irq)
 {
+	u32 gpionr = irq_to_gpio(irq);
+
 	bfin_gpio_mask_irq(irq);
-	__clear_bit(irq_to_gpio(irq), gpio_enabled);
+	__clear_bit(gpionr, gpio_enabled);
+	bfin_gpio_free(gpionr);
 }
 
 static int bfin_gpio_irq_type(unsigned int irq, unsigned int type)
@@ -730,6 +733,7 @@
 
 	bfin_gpio_mask_irq(irq);
 	__clear_bit(gpionr, gpio_enabled);
+	bfin_gpio_free(gpionr);
 }
 
 static int bfin_gpio_irq_type(unsigned int irq, unsigned int type)