* How to use gpio-omap as interrupt-controller
@ 2013-08-08 15:23 Lars Poeschel
2013-08-08 15:28 ` Santosh Shilimkar
0 siblings, 1 reply; 2+ messages in thread
From: Lars Poeschel @ 2013-08-08 15:23 UTC (permalink / raw)
To: linux-omap, linux-gpio
Hi!
I have a device-tree-booting omap board that uses gpio-omap as gpio driver.
Kernel version is 3.11.0-rc4. I have connected a device that signals
interrupts to a gpio pin of the omap. The driver for this device fails in
request_threaded_irq.
The irq framework tries to setup the irq in __setup_irq which calls
gpio_irq_type in gpio-omap.c. This function checks if bank->mod_usage is
set and because it is not, the function fails. Looking at where bank-
>mod_usage is set, I see it is only set in omap_gpio_request.
This means I have to request at least one random gpio to be able to set the
type of the irq of another pin on this bank ?
How do I correctly use the gpio-omap gpio driver in my case ?
The board is booting using device tree and does not request a gpio prior to
requesting the irq on this gpio bank. I really do not want to request a
gpio. They should stay as they are.
Or does this mean the driver of the connected device is wrong and instead
it has to request some random gpio before ?
An example of such a connected device is gpio-adnp by the way.
The device tree part looks like this:
gpioext: gpio-adnp@41 {
compatible = "ad,gpio-adnp";
reg = <0x41>;
interrupt-parent = <&gpio>;
interrupts = <160 1>;
gpio-controller;
#gpio-cells = <1>;
interrupt-controller;
#interrupt-cells = <2>;
nr-gpios = <64>;
};
Regards,
Lars
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: How to use gpio-omap as interrupt-controller
2013-08-08 15:23 How to use gpio-omap as interrupt-controller Lars Poeschel
@ 2013-08-08 15:28 ` Santosh Shilimkar
0 siblings, 0 replies; 2+ messages in thread
From: Santosh Shilimkar @ 2013-08-08 15:28 UTC (permalink / raw)
To: Lars Poeschel
Cc: linux-omap, linux-gpio, Javier Martinez Canillas, Linus Walleij,
Tony Lindgren, Kevin Hilman
On Thursday 08 August 2013 11:23 AM, Lars Poeschel wrote:
> Hi!
>
> I have a device-tree-booting omap board that uses gpio-omap as gpio driver.
> Kernel version is 3.11.0-rc4. I have connected a device that signals
> interrupts to a gpio pin of the omap. The driver for this device fails in
> request_threaded_irq.
> The irq framework tries to setup the irq in __setup_irq which calls
> gpio_irq_type in gpio-omap.c. This function checks if bank->mod_usage is
> set and because it is not, the function fails. Looking at where bank-
>> mod_usage is set, I see it is only set in omap_gpio_request.
> This means I have to request at least one random gpio to be able to set the
> type of the irq of another pin on this bank ?
> How do I correctly use the gpio-omap gpio driver in my case ?
> The board is booting using device tree and does not request a gpio prior to
> requesting the irq on this gpio bank. I really do not want to request a
> gpio. They should stay as they are.
> Or does this mean the driver of the connected device is wrong and instead
> it has to request some random gpio before ?
>
> An example of such a connected device is gpio-adnp by the way.
> The device tree part looks like this:
>
> gpioext: gpio-adnp@41 {
> compatible = "ad,gpio-adnp";
> reg = <0x41>;
>
> interrupt-parent = <&gpio>;
> interrupts = <160 1>;
>
> gpio-controller;
> #gpio-cells = <1>;
>
> interrupt-controller;
> #interrupt-cells = <2>;
>
> nr-gpios = <64>;
> };
>
You hit the issue which we tried to address but ended
up reverting the patches. refer [1], [2] for more
information. For now, its broken unfortunately.
Regards,
Santosh
[1] http://www.mail-archive.com/linux-omap@vger.kernel.org/msg91405.html
[2] https://lkml.org/lkml/2013/7/29/280
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-08-08 15:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-08 15:23 How to use gpio-omap as interrupt-controller Lars Poeschel
2013-08-08 15:28 ` Santosh Shilimkar
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.