Re: [PATCH] drivers: tca8418: Change the interrupt type

From: Dmitry Torokhov
Date: Wed Nov 09 2016 - 23:02:26 EST


Hi Maxime,

On Wed, Nov 09, 2016 at 09:02:35AM +0100, Maxime Ripard wrote:
> Hello Dmitry,
>
> On Tue, Nov 08, 2016 at 04:04:00PM -0800, Dmitry Torokhov wrote:
> > On Mon, Nov 07, 2016 at 03:40:24PM +0100, Maxime Ripard wrote:
> > > The TCA8418 interrupt has a level trigger, not a edge one.
> > >
> > > Signed-off-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
> >
> > Hmm, maybe we could rely on OF data for trigger type?
>
> We might, even though the i2c core doesn't change the trigger type
> when it retrieves the interrupt from the DT.

i2c core itself does not, and should not, but irq code does:

of_irq_get() -> irq_create_of_mapping() -> irq_create_fwspec_mapping()
-> irqd_set_trigger_type().

>
> However, I'm a bit worried about the other probing mechanims (ACPI,
> board files) that should be supported as well, and removing the
> trigger type from the flags might break those. There's no board files
> using it though in the tree, but I don't know about ACPI systems.

The driver is not enabled for ACPI systems, at least not in mainline.

By the way, this is what TCA8418 binding dochas to say:

"- interrupts: IRQ line number, should trigger on falling edge"

so it seems there was at least one system that needed falling edge and
not level interrupt.

Thanks.

--
Dmitry