Thread (24 messages) flat view 24 messages, 6 authors, 2014-01-31

device-tree: at91: irq and gpios: problem while requesting a gpio used as an interrupt source.

From: Jean-Christophe PLAGNIOL-VILLARD <hidden>
Date: 2014-01-15 12:02:14

On 11:29 Mon 13 Jan     , Jean-Jacques Hiblot wrote:
quoted hunk ↗ jump to hunk
Hello Nicolas, Jean-Christophe,

As I was trying to enable the touchscreen on the at91sam9261ek with
device-tree support, I ran into an issue. The touchscreen driver needs
to know the state of the pendown gpio and also needs it as an
interrupt source.

The problem is that when a gpio is used as an interrupt, it's
requested by the pinctrl driver during the xlate stage, marking it
unavaliable for the other driver.
It looks like the at91 pinctrl driver is the only one to use
gpio_request() in the xlate stage. Maybe we should remove this:
diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index a7549c4..cf91a35 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -1463,14 +1463,6 @@ static int at91_gpio_irq_domain_xlate(struct
irq_domain *d,
        *out_hwirq = intspec[0];
        *out_type = intspec[1] & IRQ_TYPE_SENSE_MASK;

-       ret = gpio_request(pin, ctrlr->full_name);
-       if (ret)
-               return ret;
-
-       ret = gpio_direction_input(pin);
-       if (ret)
-               return ret;
-
Nack

the gpio is request automaticaly as the driver NEVER need to known
that is a GPIO

Best Regards,
J.
        return 0;
 }

Jean-Jacques

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help