lkml.org 
[lkml]   [2014]   [Aug]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/2] Input: atmel_mxt_ts - Get IRQ edge/level flags on DT booting
Hello Dmitry,

On 08/07/2014 08:09 AM, Dmitry Torokhov wrote:
>>
>> > irq_of_parse_and_map() already sets up IRQ trigger type based on DT
>> > data, by calling irq_create_of_mapping() which in turn calls
>> > irq_set_irq_type().
>> >
>>
>> Right but somehow when the IRQ is actually requested the type is overwritten by
>> the value passed to request_threaded_irq() and interrupts are not being
>> generated by the device without this patch.
>>
>> Do you think that this is a bug in the "interrupt-parent" irqchip driver or the
>> IRQ core? I'm not that familiar with the IRQ subsystem.
>
> No, this is clearly driver fault - it smashed previously done setup with new
> flags.
>

Thanks a lot for the clarification. That was my understanding as well but wanted
to be sure.

>> >
>> > It might be a bit cleaner to just assign the flags to pdata->irqflags in
>> > mxt_parse_dt() instead. That would also account for the fact that pdata,
>> > if provided, should have priority over DT.
>> >
>>
>> You are totally right, also this will break if CONFIG_OF is not enabled since
>> dev.of_node will not be defined. While this already is taken into account for
>> mxt_parse_dt() by defining an empty function.
>>
>> I'll change it in v2 if getting the flags from the driver is the right approach
>
> Yes, please.
>

Just posted a v2 [0] with Tomasz suggestion and the patch is indeed a lot cleaner.

Best regards,
Javier

[0]: https://lkml.org/lkml/2014/8/7/82



\
 
 \ /
  Last update: 2014-08-07 10:01    [W:0.071 / U:0.336 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site