On Fri, 23 Nov 2012 23:03:47 +0530, Viresh Kumar <viresh.ku...@linaro.org> 
wrote:
> On 23 November 2012 15:11, Grant Likely <grant.lik...@secretlab.ca> wrote:
> > On Fri, 23 Nov 2012 00:26:20 +0530, Viresh Kumar <viresh.ku...@linaro.org> 
> > wrote:
> 
> >> + - irq-trigger                       : IRQ trigger to use for the 
> >> interrupt to the host
> >> + - irq-invert-polarity               : bool, IRQ line is connected with 
> >> reversed polarity
> >
> > This looks odd. Normally the interrupt polarity should be encoded in the irq
> > specifier flags field.
> 
> Hi Grant and Lee Jones,
> 
> This looks odd because stmpe is odd, i am taking the discussion held
> with Lee jones to this thread.
> 
> So, how interrupt stuff works currently in DT..
> We have a interrupt controller IC:
> 
>       ic: interrupt-controller@40008000 {
>               compatible = "foo";
>               interrupt-controller;
>               #interrupt-cells = <2>;
>                 ...
>       };
> 
> And we have a user of this IC:
> 
>       foo-peripheral@40048000 {
>               compatible = "foo-peripheral";
>               interrupt-parent = <&ic>;
>               interrupts = <39 4>;
>       };
> 
> Here first field of "interrupts" gives interrupt line number and the second 
> one
> gives polarity, interrupt type etc..
> 
> All is good till now. Now, every interrupt controller supports the first
> field, but the second one depends on its capabilities. An interrupt controller
> might not have registers to configure interrupt polarity, type, etc of
> the interrupt
> it will service and so the second field wouldn't be available for them.
> 
> For now just think stmpe is not a MFD and not a interrupt controller
> either. It is
> just a simple device, dev-foo.
> 
> It will declare values of its interrupts field based on the type of
> interrupt controller
> that will service its interrupt and that can be anything like VIC/GIC/GPIO
> controller.

Ah, so it is configuring the way the device emits interrupts; not how
the interrupt controller processes them. Fair enough.

It would actually be good to ask the interrupt controller driver what
kind of interrupt signal it expects for a given interrupt line. That
should also solve the problem and I think it would be more useful to
other devices. Can you investigate whether or not
irqd_get_trigger_type() returns the information you need?

g.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to