[PATCH 0/9] irqchip: Add LoongArch-related irqchip drivers

From: Huacai Chen
Date: Mon Jul 05 2021 - 23:09:04 EST


LoongArch is a new RISC ISA, which is a bit like MIPS or RISC-V.
LoongArch includes a reduced 32-bit version (LA32R), a standard 32-bit
version (LA32S) and a 64-bit version (LA64). LoongArch use ACPI as its
boot protocol LoongArch-specific interrupt controllers (similar to APIC)
are already added in the next revision of ACPI Specification (current
revision is 6.4).

This patchset adds some irqchip drivers for LoongArch, it is preparing
to add LoongArch support in mainline kernel, we can see a snapshot here:
https://github.com/loongson/linux/tree/loongarch-next

Cross-compile tool chain to build kernel:
https://github.com/loongson/build-tools/releases

Loongson and LoongArch documentations:
https://github.com/loongson/LoongArch-Documentation

LoongArch-specific interrupt controllers:
https://mantis.uefi.org/mantis/view.php?id=2203

Huacai Chen and Chen Zhu(9):
irqchip: Adjust Kconfig for Loongson.
irqchip/loongson-pch-pic: Improve edge triggered interrupt support.
irqchip/loongson-pch-pic: Add ACPI init support.
irqchip/loongson-pch-msi: Add ACPI init support.
irqchip/loongson-htvec: Add ACPI init support.
irqchip/loongson-liointc: Add ACPI init support.
irqchip: Add LoongArch CPU interrupt controller support.
irqchip: Add Loongson Extended I/O interrupt controller.
irqchip: Add Loongson PCH LPC controller support.

Signed-off-by: Huacai Chen <chenhuacai@xxxxxxxxxxx>
Signed-off-by: Chen Zhu <zhuchen@xxxxxxxxxxx>
---
drivers/irqchip/Kconfig | 37 +++-
drivers/irqchip/Makefile | 3 +
drivers/irqchip/irq-loongarch-cpu.c | 87 ++++++++++
drivers/irqchip/irq-loongson-eiointc.c | 308 +++++++++++++++++++++++++++++++++
drivers/irqchip/irq-loongson-htvec.c | 102 ++++++++++-
drivers/irqchip/irq-loongson-liointc.c | 140 ++++++++++++++-
drivers/irqchip/irq-loongson-pch-lpc.c | 204 ++++++++++++++++++++++
drivers/irqchip/irq-loongson-pch-msi.c | 69 +++++++-
drivers/irqchip/irq-loongson-pch-pic.c | 139 ++++++++++++++-
include/linux/cpuhotplug.h | 1 +
10 files changed, 1069 insertions(+), 21 deletions(-)
create mode 100644 drivers/irqchip/irq-loongarch-cpu.c
create mode 100644 drivers/irqchip/irq-loongson-eiointc.c
create mode 100644 drivers/irqchip/irq-loongson-pch-lpc.c
--
2.27.0