Re: [PATCH v2 0/4] Add bcm2835aux interrupt controller

From: Florian Fainelli
Date: Mon Jun 12 2017 - 14:23:17 EST


On 06/12/2017 07:25 AM, Phil Elwell wrote:
> Devices in the BCM2835 AUX block share a common interrupt line, with a
> register indicating which devices have active IRQs. Expose this as a
> nested interrupt controller to avoid IRQ sharing problems (easily
> observed if UART1 and SPI1/2 are enabled simultaneously).
>
> This patch set is complicated by the fact that the DT node for the AUX
> clock controller includes the AUXIRQ register needed by this driver.
> Patch 1 lays the groundwork by allowing this overlap and preparing for
> a future DT change that removes it.

Nit: there seems to be something wrong with your git send-email options,
the threading should be:

[PATCH 0]
[PATCH 1]

instead, patches 1-4 don't appear as replies to patch 0 anyhow, with the
minor nits here and there, this looks good, thanks!

>
> Changes in v2:
> * Add DT bindings and header file for bcm2835-aux-intc.
> * Split the interrupt-controller functionality into a dedicated irqchip
> driver with a dedicated DT node.
> * Remove mask tracking from the intc driver, so that all interrupts
> (including spurious ones) are submitted to the IRQ framework.
> * Replace hard-coded masks with BIT macro in the intc driver.
> * Prepare the AUX clock driver for a time when its DT node may only be
> a single word register, but until then ioremap its region without
> reserving it to permit sharing.
>
> Phil Elwell (4):
> clk: bcm2835: More flexible IO register remapping
> dt: bindings: Add bindings for bcm2835-aux-intc
> irqchip: Add BCM2835 AUX interrupt controller
> ARM: dts: bcm283x: Add and use bcm2835-aux-intc
>
> .../interrupt-controller/brcm,bcm2835-aux-intc.txt | 28 ++++
> arch/arm/boot/dts/bcm283x.dtsi | 27 +++-
> drivers/clk/bcm/clk-bcm2835-aux.c | 20 ++-
> drivers/irqchip/Makefile | 2 +-
> drivers/irqchip/irq-bcm2835-aux.c | 155 +++++++++++++++++++++
> .../interrupt-controller/bcm2835-aux-intc.h | 20 +++
> 6 files changed, 243 insertions(+), 9 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-aux-intc.txt
> create mode 100644 drivers/irqchip/irq-bcm2835-aux.c
> create mode 100644 include/dt-bindings/interrupt-controller/bcm2835-aux-intc.h
>


--
Florian