Messages in this thread | | | From | Arnd Bergmann <> | Date | Thu, 1 Mar 2018 15:29:41 +0100 | Subject | Re: [PATCH v4] Input: gpio_keys: Add level trigger support for GPIO keys |
| |
On Thu, Mar 1, 2018 at 2:59 PM, Andy Shevchenko <andy.shevchenko@gmail.com> wrote: > On Thu, Mar 1, 2018 at 2:37 PM, Arnd Bergmann <arnd@arndb.de> wrote: >> On Thu, Mar 1, 2018 at 1:09 PM, Andy Shevchenko >> <andy.shevchenko@gmail.com> wrote: >>> On Thu, Mar 1, 2018 at 9:36 AM, Baolin Wang <baolin.wang@linaro.org> wrote: >>>> On some platforms (such as Spreadtrum platform), the GPIO keys can only >>>> be triggered by level type. So this patch introduces one trigger_type to >>>> indicate if the button's interrupt type is level trigger or edge trigger. >>> >>>> button->irq = >>>> irq_of_parse_and_map(to_of_node(child), 0); >>> >>> AFAIU, 0 means NO_IRQ, thus, >>> >>>> + if (button->irq) >>>> + button->trigger_type = >>>> + irq_get_trigger_type(button->irq); >>> >>> irq_get_trigger_type(NO_IRQ) should return 0. >>> >>> Therefore, if (button->irq) is redundant. >>> Did I miss anything? >> >> "irq_of_parse_and_map(to_of_node(child), 0);" is the first interrupt. A >> more common way to express the same thing in modern drivers is >> 'platform_get_irq(pdev, 0)'. > > Yes, though I'm talking about _returned_ value.
Got it, yes you are right.
Arnd
| |