This patch set trys to convert GIC to ACPI which based on patches from Amit, I rework them and try to get things simpler.
In MADT table, there are GIC cpu interface base address and GIC distributor base address, use them to convert GIC to ACPI.
GIC should be converted after all the devices refer to GIC are converted. But this patch set can be safely applied to linaro-acpi git tree if we don't remove the DT node of GIC, the node of GIC can be removed after all the devices converted to ACPI.
v2: a) fix missed iounmap() when return in error path; b) add stub for acpi_gic_init(void) when !CONFIG_ACPI C) modify the GSI mapping from DT to ACPI d) remove the hack code and modify the change log a bit
v3: a) modify the minor typo for ACPI hwirq mapping "range [16, 31]" b) return -ENODEV when !CONFIG_ACPI in stub function acpi_gic_init(void) c) rebased on the latest linaro-acpi kernel
Amit Daniel Kachhap (2): irqdomain: Add a new API irq_create_acpi_mapping() ACPI: ARM: Update acpi_register_gsi to register with the core IRQ subsystem
Hanjun Guo (2): irqchip / GIC: do not set default host for GIC domain multi-times when ACPI enabled ARM / GIC: convert GIC to ACPI using the information in MADT
arch/arm64/kernel/irq.c | 4 ++ drivers/acpi/plat/arm/boot.c | 98 ++++++++++++++++++++++++++++++++++++------ drivers/irqchip/irq-gic.c | 5 ++- include/linux/acpi.h | 8 ++++ kernel/irq/irqdomain.c | 27 ++++++++++++ 5 files changed, 127 insertions(+), 15 deletions(-)