mirror of https://lore.kernel.org/linux-amlogic/
 help / color / mirror / Atom feed
From: narmstrong@baylibre.com (Neil Armstrong)
To: linus-amlogic@lists.infradead.org
Subject: [PATCH v2 0/9] irqchip: meson: add support for the gpio interrupt controller
Date: Thu, 20 Oct 2016 12:08:58 +0200	[thread overview]
Message-ID: <da149a3d-68b9-f4fa-f7d3-2739c50b95a0@baylibre.com> (raw)
In-Reply-To: <1476890480-8884-1-git-send-email-jbrunet@baylibre.com>

On 10/19/2016 05:21 PM, Jerome Brunet wrote:
> This patch series adds support for the GPIO interrupt controller found
> on Amlogic's meson SoC families.
> 
> Unlike what the name suggests, this controller is not part of the SoC GPIO
> subsystem. It's an indepedent controller which can watch almost all pad of
> the SoC and generate and interrupt from it. Some pins, which are not part
> of the public datasheet, don't seem to have this capability though.
> 
> Hardware wise, the controller is a 256 to 8 multiplexer. It can take up
> to 256 input pads and route them to any of 8 GIC's interrupts. There is
> also a filter block in the middle to select the appropriate edge or level.
> 
> The number of interrupt declared by the irqchip is lowered from 256 to the
> actual number of signal routed to the controller on each SoC family. As we
> have access to only 8 GIC?s interrupts, these are allocated when an
> interrupt is requested from the controller, on a first come, first served
> basis.
> 
> This series has been tested on Amlogic S905-P200 board with the front
> panel power button. Directly passing an IRQ or using gpio_to_irq both work
> with this driver.
> 
> This work is derived from the previous work of Carlo Caione [1].
> 
> Changes since RFC : [2]
>  * Remove interrupt property in device tree: the controller cannot generate
>    interrupts on its own and is merely routing the interrupt to the GIC,
>    therefore it should not use the interrupt property. This data is now
>    stored directly in the driver, same as the pinctrl data.
> 
>  * Improve compatibility checking of meson pinctrl on its interrupt parent
>    to activate gpio_to_irq callback
> 
>  * Drop IRQ_BOTH hack. Need more work to have an acceptable solution for
>    this
> 
> Changes since v1 : [3]
>  * Correct mistake in patch 4 when no compatible controller is found. Sorry
>    for the inconvenience.
> 
> [1] : http://lkml.kernel.org/r/1448987062-31225-1-git-send-email-carlo at caione.org
> [2] : http://lkml.kernel.org/r/1475593708-10526-1-git-send-email-jbrunet at baylibre.com
> [3] : http://lkml.kernel.org/r/1476871709-8359-1-git-send-email-jbrunet at baylibre.com
> 
> Jerome Brunet (9):
>   irqchip: meson: add support for gpio interrupt controller
>   dt-bindings: interrupt-controller: add DT binding for meson GPIO
>     interrupt controller
>   pinctrl: meson: update pinctrl data with gpio irq data
>   pinctrl: meson: allow gpio to request irq
>   dt-bindings: pinctrl: meson: update gpio dt-bindings
>   ARM64: meson: enable MESON_IRQ_GPIO in Kconfig
>   ARM: meson: enable MESON_IRQ_GPIO in Kconfig for meson8
>   ARM64: dts: amlogic: enable gpio interrupt controller on gxbb
>   ARM: dts: amlogic: enable gpio interrupt controller on meson8
> 
>  .../amlogic,meson-gpio-intc.txt                    |  31 ++
>  .../devicetree/bindings/pinctrl/meson,pinctrl.txt  |   4 +
>  arch/arm/boot/dts/meson8.dtsi                      |  11 +
>  arch/arm/boot/dts/meson8b.dtsi                     |  11 +
>  arch/arm/mach-meson/Kconfig                        |   2 +
>  arch/arm64/Kconfig.platforms                       |   1 +
>  arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi        |   9 +
>  drivers/irqchip/Kconfig                            |   9 +
>  drivers/irqchip/Makefile                           |   1 +
>  drivers/irqchip/irq-meson-gpio.c                   | 423 +++++++++++++++++++++
>  drivers/pinctrl/Kconfig                            |   2 +
>  drivers/pinctrl/meson/pinctrl-meson-gxbb.c         |  24 +-
>  drivers/pinctrl/meson/pinctrl-meson.c              |  77 +++-
>  drivers/pinctrl/meson/pinctrl-meson.h              |  17 +-
>  drivers/pinctrl/meson/pinctrl-meson8.c             |  22 +-
>  drivers/pinctrl/meson/pinctrl-meson8b.c            |  34 +-
>  16 files changed, 641 insertions(+), 37 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/interrupt-controller/amlogic,meson-gpio-intc.txt
>  create mode 100644 drivers/irqchip/irq-meson-gpio.c
> 

With the resent patch 4 :
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>

      parent reply	other threads:[~2016-10-20 10:08 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-19 15:21 Jerome Brunet
2016-10-19 15:21 ` [PATCH v2 1/9] irqchip: meson: add support for " Jerome Brunet
2016-10-20 16:33   ` Marc Zyngier
2016-10-21  8:49     ` Jerome Brunet
2016-10-21 10:10       ` Mark Rutland
2016-10-21 10:17         ` Jerome Brunet
2016-10-21 10:28       ` Marc Zyngier
2016-10-19 15:21 ` [PATCH v2 2/9] dt-bindings: interrupt-controller: add DT binding for meson GPIO " Jerome Brunet
2016-10-26 21:42   ` Rob Herring
2016-10-27  9:32     ` Mark Rutland
2016-10-27  9:40       ` Jerome Brunet
2016-10-19 15:21 ` [PATCH v2 3/9] pinctrl: meson: update pinctrl data with gpio irq data Jerome Brunet
2016-10-19 15:21 ` [PATCH v2 4/9] pinctrl: meson: allow gpio to request irq Jerome Brunet
2016-10-19 15:37   ` [RESEND PATCH " Jerome Brunet
2016-10-19 15:21 ` [PATCH v2 5/9] dt-bindings: pinctrl: meson: update gpio dt-bindings Jerome Brunet
2016-10-19 15:21 ` [PATCH v2 6/9] ARM64: meson: enable MESON_IRQ_GPIO in Kconfig Jerome Brunet
2016-10-20 16:34   ` Marc Zyngier
2016-10-19 15:21 ` [PATCH v2 7/9] ARM: meson: enable MESON_IRQ_GPIO in Kconfig for meson8 Jerome Brunet
2016-10-19 15:21 ` [PATCH v2 8/9] ARM64: dts: amlogic: enable gpio interrupt controller on gxbb Jerome Brunet
2016-10-19 15:21 ` [PATCH v2 9/9] ARM: dts: amlogic: enable gpio interrupt controller on meson8 Jerome Brunet
2016-10-20 10:08 ` Neil Armstrong [this message]

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=da149a3d-68b9-f4fa-f7d3-2739c50b95a0@baylibre.com \
    --to=narmstrong@baylibre.com \
    --cc=linus-amlogic@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®