[GIT PULL] GIC updates for 4.9

From: Marc Zyngier
Date: Wed Sep 14 2016 - 10:52:10 EST


Hi Thomas,

Please find below the pull request for some GIC updates, mostly
focussing on the ITS ACPI support this time around. Rafael has acked
the ACPI parts, and Bjorn has acked the PCI sides. None of that should
conflict anyway, as the drivers/acpi/arm64 directory gets created for
the occasion.

The rest is fairly minor (two cleanups and a small optimisation).

Thanks,

M.

The following changes since commit 9395452b4aab7bc2475ef8935b4a4fb99d778d70:

Linux 4.8-rc6 (2016-09-11 20:02:25 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git tags/irqchip-4.9-1

for you to fetch changes up to 723344dd0b2aa10ef9d28fe7f35d594d3e64f0f9:

irqchip/gicv3-its: Use MADT ITS subtable to do PCI/MSI domain initialization (2016-09-12 20:32:43 +0100)

----------------------------------------------------------------
First drop of irqchip updates for 4.9

- ACPI IORT core code
- IORT support for the GICv3 ITS
- A few of GIC cleanups

----------------------------------------------------------------
Baoyou Xie (1):
irqchip/gic: Mark gic_init_physaddr() static

Daniel Thompson (1):
irqchip/gic-v3: Reset BPR during initialization

Jon Hunter (1):
irqchip/gic-pm: Update driver to use of_pm_clk_add_clk

Marc Zyngier (1):
irqchip/gic: Make locking a BL_SWITCHER only feature

Tomasz Nowicki (8):
ACPI: I/O Remapping Table (IORT) initial support
ACPI: Add new IORT functions to support MSI domain handling
PCI/MSI: Setup MSI domain on a per-device basis using IORT ACPI table
irqchip/gicv3-its: Cleanup for ITS domain initialization
irqchip/gicv3-its: Refactor ITS DT init code to prepare for ACPI
irqchip/gicv3-its: Probe ITS in the ACPI way
irqchip/gicv3-its: Factor out PCI-MSI part that might be reused for ACPI
irqchip/gicv3-its: Use MADT ITS subtable to do PCI/MSI domain initialization

arch/arm/include/asm/arch_gicv3.h | 6 +
arch/arm64/include/asm/arch_gicv3.h | 6 +
drivers/acpi/Kconfig | 4 +
drivers/acpi/Makefile | 2 +
drivers/acpi/arm64/Kconfig | 6 +
drivers/acpi/arm64/Makefile | 1 +
drivers/acpi/arm64/iort.c | 368 +++++++++++++++++++++++++++++++
drivers/acpi/bus.c | 2 +
drivers/irqchip/Kconfig | 1 +
drivers/irqchip/irq-gic-pm.c | 23 +-
drivers/irqchip/irq-gic-v3-its-pci-msi.c | 88 ++++++--
drivers/irqchip/irq-gic-v3-its.c | 171 ++++++++++----
drivers/irqchip/irq-gic-v3.c | 15 +-
drivers/irqchip/irq-gic.c | 38 +++-
drivers/pci/msi.c | 11 +-
include/linux/acpi_iort.h | 42 ++++
include/linux/irqchip/arm-gic-v3.h | 4 +-
17 files changed, 690 insertions(+), 98 deletions(-)
create mode 100644 drivers/acpi/arm64/Kconfig
create mode 100644 drivers/acpi/arm64/Makefile
create mode 100644 drivers/acpi/arm64/iort.c
create mode 100644 include/linux/acpi_iort.h