All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Blumenstingl <martin.blumenstingl-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
To: Linus Walleij <linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: Heiner Kallweit
	<hkallweit1-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Jerome Brunet <jbrunet-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	Marc Zyngier <marc.zyngier-5wv7dgnIgG8@public.gmane.org>,
	"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"open list:ARM/Amlogic Meson..."
	<linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
	"linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [PATCH 0/5 RfC] pintrl: meson: add support for GPIO IRQs
Date: Thu, 11 May 2017 22:52:48 +0200	[thread overview]
Message-ID: <CAFBinCBgNvyc_P_OSe1=wRB_jrCNUXWcRJzR8oGbqitQz3ntwQ@mail.gmail.com> (raw)
In-Reply-To: <CACRpkdbeA9pwnOFjdryKjeyZewLWA7Q6ZRbxc=MreT0zJMbgQA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

Hi Linus,

On Thu, May 11, 2017 at 4:34 PM, Linus Walleij <linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> wrote:
> On Sun, May 7, 2017 at 6:19 PM, Heiner Kallweit <hkallweit1-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>
>> This patch series is partially based on a series Jerome Brunet
>> submitted about half a year ago. Due to open questions this series never
>> made it to mainline, see https://patchwork.kernel.org/patch/9384431/
>>
>> This new attempt uses GPIOLIB_IRQCHIP resulting in less needed code.
>> Included is also support for using two parent IRQs in case
>> of IRQ_TYPE_EDGE_BOTH, like in the vendor driver.
>>
>> Worth to be mentioned is also that I had to work around a strange
>> issue with spurious interrupts resulting in a deadlock.
>> The affected critical section in __setup_irq is executed with interrupts
>> disabled, nevertheless spurious GPIO IRQs result in a deadlock what
>> seems to indicate that they are handled on the same CPU.
>> I didn't find a better explanation than a possible HW flaw so far.
>>
>> The series was successfully tested on a Odroid-C2, e.g. with removing
>> polling for SD card insertion/removal from the mmc driver.
>>
>> Heiner Kallweit (5):
>>   pinctrl: meson: add interrupts to pinctrl data
>>   pinctrl: meson: document GPIO IRQ DT binding
>>   pinctrl: meson: add DT node for GPIO IRQ on Meson GX
>>   pinctrl: meson: add DT node for GPIO IRQ on Meson 8 / 8b
>>   pinctrl: meson: add support for GPIO interrupts
>
> I just merged a bunch of patches from Martin Blumenstigl for this driver.
thank you!

> Martin can you help out reviewing these patches?
I think it would be nice to have GPIO interrupt support and I can
certainly help testing this. however, I am neither a pinctrl nor an
interrupt expert. I can have a look at the patches and give (limited)
feedback, but these should certainly be reviewed by people with more
knowledge of these (pinctrl and irq) subsystems.

Jerome has already spent (probably quite some...) time with the Meson
GPIO interrupt support, he has already replied to patch #1.

apart from that: thanks to anybody who dedicates time to this topic -
this is probably one of the most exotic bits (and thus hard to
implement) in the Meson SoCs!


Regards,
Martin
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: martin.blumenstingl@googlemail.com (Martin Blumenstingl)
To: linus-amlogic@lists.infradead.org
Subject: [PATCH 0/5 RfC] pintrl: meson: add support for GPIO IRQs
Date: Thu, 11 May 2017 22:52:48 +0200	[thread overview]
Message-ID: <CAFBinCBgNvyc_P_OSe1=wRB_jrCNUXWcRJzR8oGbqitQz3ntwQ@mail.gmail.com> (raw)
In-Reply-To: <CACRpkdbeA9pwnOFjdryKjeyZewLWA7Q6ZRbxc=MreT0zJMbgQA@mail.gmail.com>

Hi Linus,

On Thu, May 11, 2017 at 4:34 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> On Sun, May 7, 2017 at 6:19 PM, Heiner Kallweit <hkallweit1@gmail.com> wrote:
>
>> This patch series is partially based on a series Jerome Brunet
>> submitted about half a year ago. Due to open questions this series never
>> made it to mainline, see https://patchwork.kernel.org/patch/9384431/
>>
>> This new attempt uses GPIOLIB_IRQCHIP resulting in less needed code.
>> Included is also support for using two parent IRQs in case
>> of IRQ_TYPE_EDGE_BOTH, like in the vendor driver.
>>
>> Worth to be mentioned is also that I had to work around a strange
>> issue with spurious interrupts resulting in a deadlock.
>> The affected critical section in __setup_irq is executed with interrupts
>> disabled, nevertheless spurious GPIO IRQs result in a deadlock what
>> seems to indicate that they are handled on the same CPU.
>> I didn't find a better explanation than a possible HW flaw so far.
>>
>> The series was successfully tested on a Odroid-C2, e.g. with removing
>> polling for SD card insertion/removal from the mmc driver.
>>
>> Heiner Kallweit (5):
>>   pinctrl: meson: add interrupts to pinctrl data
>>   pinctrl: meson: document GPIO IRQ DT binding
>>   pinctrl: meson: add DT node for GPIO IRQ on Meson GX
>>   pinctrl: meson: add DT node for GPIO IRQ on Meson 8 / 8b
>>   pinctrl: meson: add support for GPIO interrupts
>
> I just merged a bunch of patches from Martin Blumenstigl for this driver.
thank you!

> Martin can you help out reviewing these patches?
I think it would be nice to have GPIO interrupt support and I can
certainly help testing this. however, I am neither a pinctrl nor an
interrupt expert. I can have a look at the patches and give (limited)
feedback, but these should certainly be reviewed by people with more
knowledge of these (pinctrl and irq) subsystems.

Jerome has already spent (probably quite some...) time with the Meson
GPIO interrupt support, he has already replied to patch #1.

apart from that: thanks to anybody who dedicates time to this topic -
this is probably one of the most exotic bits (and thus hard to
implement) in the Meson SoCs!


Regards,
Martin

  parent reply	other threads:[~2017-05-11 20:52 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-07 16:19 [PATCH 0/5 RfC] pintrl: meson: add support for GPIO IRQs Heiner Kallweit
2017-05-07 16:19 ` Heiner Kallweit
2017-05-07 16:34 ` [PATCH 1/5] pintrl: meson: add interrupts to pinctrl data Heiner Kallweit
2017-05-07 16:34   ` Heiner Kallweit
2017-05-11 14:50   ` Linus Walleij
2017-05-11 14:50     ` Linus Walleij
2017-05-11 16:08     ` Jerome Brunet
2017-05-11 16:08       ` Jerome Brunet
2017-05-11 19:33       ` Heiner Kallweit
2017-05-11 19:33         ` Heiner Kallweit
     [not found]         ` <7ed5a88a-43dd-f7ab-2794-48ceb5a62a93-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-05-12  6:08           ` Heiner Kallweit
2017-05-12  6:08             ` Heiner Kallweit
2017-05-12  9:51             ` Linus Walleij
2017-05-12  9:51               ` Linus Walleij
2017-05-12 17:23               ` Heiner Kallweit
2017-05-12 17:23                 ` Heiner Kallweit
2017-05-07 16:34 ` [PATCH 2/5] pintrl: meson: document GPIO IRQ DT binding Heiner Kallweit
2017-05-07 16:34   ` Heiner Kallweit
     [not found]   ` <0d835130-7c6c-751c-af15-c2ab69edcb42-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-05-12 19:38     ` Rob Herring
2017-05-12 19:38       ` Rob Herring
2017-05-12 21:41       ` Heiner Kallweit
2017-05-12 21:41         ` Heiner Kallweit
     [not found]         ` <b39f1742-0558-beaa-1e06-eed80d644424-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-05-16  0:31           ` Rob Herring
2017-05-16  0:31             ` Rob Herring
2017-05-07 16:34 ` [PATCH 3/5] pintrl: meson: add DT node for GPIO IRQ on Meson GX Heiner Kallweit
2017-05-07 16:34   ` Heiner Kallweit
2017-05-07 16:34 ` [PATCH 4/5] pintrl: meson: add DT node for GPIO IRQ on Meson 8 / 8b Heiner Kallweit
2017-05-07 16:34   ` Heiner Kallweit
     [not found] ` <a4ca587b-d3e8-a22d-4d25-289871d2d095-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-05-07 16:34   ` [PATCH 5/5] pintrl: meson: add support for GPIO interrupts Heiner Kallweit
2017-05-07 16:34     ` Heiner Kallweit
2017-05-11 15:10     ` Linus Walleij
2017-05-11 15:10       ` Linus Walleij
2017-05-11 14:34   ` [PATCH 0/5 RfC] pintrl: meson: add support for GPIO IRQs Linus Walleij
2017-05-11 14:34     ` Linus Walleij
     [not found]     ` <CACRpkdbeA9pwnOFjdryKjeyZewLWA7Q6ZRbxc=MreT0zJMbgQA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-05-11 20:52       ` Martin Blumenstingl [this message]
2017-05-11 20:52         ` Martin Blumenstingl

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAFBinCBgNvyc_P_OSe1=wRB_jrCNUXWcRJzR8oGbqitQz3ntwQ@mail.gmail.com' \
    --to=martin.blumenstingl-gm/ye1e23mwn+bqq9rbeug@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=hkallweit1-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=jbrunet-rdvid1DuHRBWk0Htik3J/w@public.gmane.org \
    --cc=linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=marc.zyngier-5wv7dgnIgG8@public.gmane.org \
    --cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.