irqchip/apple-aic: Add support for the Apple Interrupt Controller
authorHector Martin <marcan@marcan.st>
Wed, 20 Jan 2021 23:55:15 +0000 (08:55 +0900)
committerHector Martin <marcan@marcan.st>
Thu, 8 Apr 2021 11:18:41 +0000 (20:18 +0900)
commit76cde26394114f6af2710c6b2ad6854f1e8ee859
tree5b022ad1fd701d119a62983eb4a03d4ead144539
parentf531d25bda553c71696bb5fc6bf90fb28c6fae36
irqchip/apple-aic: Add support for the Apple Interrupt Controller

This is the root interrupt controller used on Apple ARM SoCs such as the
M1. This irqchip driver performs multiple functions:

* Handles both IRQs and FIQs

* Drives the AIC peripheral itself (which handles IRQs)

* Dispatches FIQs to downstream hard-wired clients (currently the ARM
  timer).

* Implements a virtual IPI multiplexer to funnel multiple Linux IPIs
  into a single hardware IPI

Reviewed-by: Marc Zyngier <maz@kernel.org>
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Hector Martin <marcan@marcan.st>
MAINTAINERS
drivers/irqchip/Kconfig
drivers/irqchip/Makefile
drivers/irqchip/irq-apple-aic.c [new file with mode: 0644]
include/linux/cpuhotplug.h