]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
irqchip/ast2700-intc: Add AST2700-A2 support
authorRyan Chen <ryan_chen@aspeedtech.com>
Tue, 7 Apr 2026 03:08:05 +0000 (11:08 +0800)
committerThomas Gleixner <tglx@kernel.org>
Thu, 30 Apr 2026 10:53:03 +0000 (12:53 +0200)
commit07825e41519abb8ac13d6d1c553af47f57775f6b
tree1ac103dd3d4644967f3a8c60fc9af7c2f0aef695
parent51561ad8c89cfdd90314ce78c63553632d95bfd2
irqchip/ast2700-intc: Add AST2700-A2 support

The AST2700 interrupt fabric is shared by multiple integrated processors
(PSP/SSP/TSP/BootMCU), each with its own interrupt controller and its own
devicetree view of the system. As a result, interrupt routing cannot be
treated as fixed: the valid route for a peripheral interrupt depends on
which processor is consuming it.

The INTC0 driver models this by creating a hierarchical irqdomain under
the upstream interrupt controller selected by the interrupt-parent
property in the devicetree. Information derived from this relationship
is incorporated into the route resolution logic for the controller.

The INTC1 driver implements the banked INTM-fed controller and forwards
interrupts toward INTC0, without embedding assumptions about the final
destination processor.

Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com>
Signed-off-by: Thomas Gleixner <tglx@kernel.org>
Link: https://patch.msgid.link/20260407-irqchip-v5-2-c0b0a300a057@aspeedtech.com
drivers/irqchip/Kconfig
drivers/irqchip/Makefile
drivers/irqchip/irq-ast2700-intc0.c [new file with mode: 0644]
drivers/irqchip/irq-ast2700-intc1.c [new file with mode: 0644]
drivers/irqchip/irq-ast2700.c [new file with mode: 0644]
drivers/irqchip/irq-ast2700.h [new file with mode: 0644]