[GIT PULL] irqchip: Core changes for v4.1 (round 3)

From: Jason Cooper
Date: Fri Apr 10 2015 - 19:45:56 EST


Thomas,

This is the big one. With this pull request, we remove the legacy hack
gic_arch_extn, and all users of it. Replacing it with proper
representations via stacked domains. Due to the potentially disruptive
nature of this series, I've taken several precautions to make sure all
interested folks are informed and had plenty of chance to object or
recommend other courses of action. You're receiving this because there
have been no objections. ;-)

The nature of each series required that the patches be kept together, so
we're touching a lot of arch/arm/ code here, as well as the
corresponding dts files. To soften the impact of this, I created a
topic branch per-subarch that they could test, base other work off of,
etc.

These commits have all been in linux-next for either 14 (exynos) or 17
tags. iow, at _least_ two weeks, probably three. No issues reported.

On the practical side, the DT compatibility break will only be noticed if
a user boots a newer kernel with an old DT. They'll have a usable
system, minus suspend/resume. There will be a large warning to upgrade
the dtb in order to get suspend/resume working.

We feel the impact of this change will be minimal as most distributions
have responded to DT instability by tying the dtb to the kernel version
it came from. I don't mention this as justification, rather as a fact
that's useful for measuring the potential impact of these necessary
changes.

A tremendous "Thank you!" to Marc for putting forth all the effort to
create this series and his gentle 'prodding' to move it along. :)

This is an incremental pull request from tags/irqchip-core-4.1-2 up to
tags/irqchip-core-4.1-3 on the irqchip/core branch.

Please pull.

thx,

Jason.

The following changes since commit 78223354a64284fe1ef74c5a7900435776fcf2a0:

Merge branch 'irqchip/renesas' into irqchip/core (2015-04-02 23:27:23 +0000)

are available in the git repository at:

git://git.infradead.org/users/jcooper/linux.git tags/irqchip-core-4.1-3

for you to fetch changes up to a01e7b3258bea93fbf1f028fab1c739d80c61823:

Merge branch 'irqchip/stacked-irq_set_wake' into irqchip/core (2015-04-10 22:58:19 +0000)

----------------------------------------------------------------
irqchip core change for v4.1 (round 3)

- Purge the gic_arch_extn hacks and abuse by using the new stacked domains

NOTE: Due to the nature of these changes, patches crossing subsystems have
been kept together in their own branches.

- tegra

- Handle the LIC properly

- omap

- Convert crossbar to stacked domains
- kill arm,routable-irqs in GIC binding

- exynos

- Convert PMU wakeup to stacked domains

- shmobile, ux500, zynq (irq_set_wake branch)

- Switch from abusing gic_arch_extn to using gic_set_irqchip_flags

----------------------------------------------------------------
Jason Cooper (4):
Merge branch 'irqchip/stacked-tegra' into irqchip/core
Merge branch 'irqchip/stacked-omap' into irqchip/core
Merge branch 'irqchip/stacked-exynos' into irqchip/core
Merge branch 'irqchip/stacked-irq_set_wake' into irqchip/core

Marc Zyngier (19):
ARM: tegra: irq: nuke leftovers from non-DT support
irqchip: tegra: Add DT-based support for legacy interrupt controller
ARM: tegra: skip gic_arch_extn setup if DT has a LIC node
ARM: tegra: update DTs to expose legacy interrupt controller
DT: tegra: add binding for the legacy interrupt controller
ARM: tegra: remove old LIC support
genirq: Add irqchip_set_wake_parent
irqchip: crossbar: Convert dra7 crossbar to stacked domains
DT: update ti,irq-crossbar binding
irqchip: gic: Get rid of routable domain
DT: arm,gic: kill arm,routable-irqs
DT: omap4/5: add binding for the wake-up generator
ARM: omap: convert wakeupgen to stacked domains
irqchip: gic: Add an entry point to set up irqchip flags
ARM: shmobile: remove use of gic_arch_extn.irq_set_wake
ARM: ux500: switch from gic_arch_extn to gic_set_irqchip_flags
ARM: zynq: switch from gic_arch_extn to gic_set_irqchip_flags
ARM: exynos4/5: convert pmu wakeup to stacked domains
DT: exynos: update PMU binding

Thierry Reding (1):
irqchip: tegra: Add Tegra210 support

Documentation/devicetree/bindings/arm/gic.txt | 6 -
.../devicetree/bindings/arm/omap/crossbar.txt | 18 +-
.../devicetree/bindings/arm/samsung/pmu.txt | 17 +
.../interrupt-controller/nvidia,tegra-ictlr.txt | 43 +++
.../interrupt-controller/ti,omap4-wugen-mpu | 33 ++
arch/arm/boot/dts/am4372.dtsi | 11 +-
arch/arm/boot/dts/am437x-gp-evm.dts | 1 -
arch/arm/boot/dts/am437x-sk-evm.dts | 1 -
arch/arm/boot/dts/am43x-epos-evm.dts | 1 -
arch/arm/boot/dts/am57xx-beagle-x15.dts | 3 +-
arch/arm/boot/dts/dra7-evm.dts | 2 +-
arch/arm/boot/dts/dra7.dtsi | 43 ++-
arch/arm/boot/dts/dra72-evm.dts | 1 -
arch/arm/boot/dts/dra72x.dtsi | 3 +-
arch/arm/boot/dts/dra74x.dtsi | 5 +-
arch/arm/boot/dts/exynos3250.dtsi | 4 +
arch/arm/boot/dts/exynos4.dtsi | 4 +
arch/arm/boot/dts/exynos5250.dtsi | 4 +
arch/arm/boot/dts/exynos5420.dtsi | 4 +
arch/arm/boot/dts/omap4-duovero.dtsi | 2 -
arch/arm/boot/dts/omap4-panda-common.dtsi | 8 +-
arch/arm/boot/dts/omap4-sdp.dts | 8 +-
arch/arm/boot/dts/omap4-var-som-om44.dtsi | 2 -
arch/arm/boot/dts/omap4.dtsi | 18 +-
arch/arm/boot/dts/omap5-cm-t54.dts | 1 -
arch/arm/boot/dts/omap5-uevm.dts | 2 -
arch/arm/boot/dts/omap5.dtsi | 26 +-
arch/arm/boot/dts/tegra114.dtsi | 16 +-
arch/arm/boot/dts/tegra124.dtsi | 16 +-
arch/arm/boot/dts/tegra20.dtsi | 15 +-
arch/arm/boot/dts/tegra30.dtsi | 16 +-
arch/arm/mach-exynos/exynos.c | 15 +-
arch/arm/mach-exynos/suspend.c | 135 +++++++-
arch/arm/mach-omap2/omap-wakeupgen.c | 128 +++++--
arch/arm/mach-omap2/omap-wakeupgen.h | 1 -
arch/arm/mach-omap2/omap4-common.c | 27 +-
arch/arm/mach-shmobile/intc-sh73a0.c | 7 +-
arch/arm/mach-shmobile/setup-r8a7779.c | 7 +-
arch/arm/mach-tegra/iomap.h | 15 -
arch/arm/mach-tegra/irq.c | 209 +-----------
arch/arm/mach-tegra/irq.h | 6 -
arch/arm/mach-tegra/tegra.c | 1 -
arch/arm/mach-ux500/cpu.c | 2 +-
arch/arm/mach-zynq/common.c | 2 +-
drivers/irqchip/Makefile | 1 +
drivers/irqchip/irq-crossbar.c | 210 +++++++-----
drivers/irqchip/irq-gic.c | 58 +---
drivers/irqchip/irq-tegra.c | 377 +++++++++++++++++++++
include/linux/irq.h | 1 +
include/linux/irqchip/arm-gic.h | 7 +-
include/linux/irqchip/irq-crossbar.h | 11 -
kernel/irq/chip.c | 16 +
52 files changed, 1032 insertions(+), 538 deletions(-)
create mode 100644 Documentation/devicetree/bindings/interrupt-controller/nvidia,tegra-ictlr.txt
create mode 100644 Documentation/devicetree/bindings/interrupt-controller/ti,omap4-wugen-mpu
create mode 100644 drivers/irqchip/irq-tegra.c
delete mode 100644 include/linux/irqchip/irq-crossbar.h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/