Messages in this thread | | | Date | Mon, 11 Nov 2013 11:53:38 -0700 | From | Stephen Warren <> | Subject | Re: [PATCH v3] gpio: interrupt consistency check for OF GPIO IRQs |
| |
On 11/11/2013 11:28 AM, Gerlando Falauto wrote: > Hi everyone, > > [jumping in on an old discussion] > > On 09/09/2013 06:19 PM, Mark Brown wrote: >> On Wed, Sep 04, 2013 at 02:16:36PM -0600, Stephen Warren wrote: >>> On 09/04/2013 03:05 AM, Lars Poeschel wrote: >> >>>> The driver that tries to use the GPIO requested by this patch before >>>> HAS to >>>> fail. This is exactly the intention of this patch. We don't want the >>>> GPIO to >>>> be requested any more, if it is used as an interrupt pin. >> >>> That will break existing drivers. There are drivers that request the >>> same GPIO and IRQ. IIRC, the SDHCI CD (Card Detect) GPIO is requested >>> that way. >> >> Yes, plus input devices and audio jack detection among others. This >> pattern is very common if the GPIO is actually being used as a GPIO, an >> edge triggered interrupt is used to flag when something happens and the >> state is determined by reading the GPIO state (often with some >> debounce). > > I actually came across this thread while looking for an answer to the > following (apparently trivial) question: > > If you were to write a new driver & binding, what would be, in general, > the recommended DT binding for a cascade interrupt controller (or any > other peripheral, for that matter), which is connected through a GPIO > (to be used as IRQ)? > > a) Through gpios = <&gpio0 N> > b) through interrupt-parent = <&gpio0> & interrupts <N > IRQ_TYPE_LEVEL_LOW>, or > c) both?
(b) alone.
From the perspective of the child interrupt controller, its output is purely an interrupt. The fact that the parent interrupt controller could use that pin as a GPIO in some other context (e.g. on a different board) isn't something that the child interrupt controller should know/care about.
| |