All of lore.kernel.org
 help / color / mirror / Atom feed
* 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

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.