[PATCH v2 0/4] irqchip: Add support for Aspeed AST2700 SCU interrupt controller
Ryan Chen
ryan_chen at aspeedtech.com
Sun Aug 31 12:14:34 AEST 2025
This series adds support for the SCU (System Control Unit) interrupt
controllers on the Aspeed AST2700 SoC.
AST2700 follows the same multi-instance SCU interrupt controller design
as AST2600, with four independent interrupt domains (scu-ic0 to 3).
However, unlike previous SoCs that use a single register for both enable
and status bits, AST2700 splits them into separate IER (Interrupt Enable)
and ISR (Interrupt Status) registers.
To support this, the driver is refactored to use a variant-based init
structure, selected by compatible string. Register access is also
converted from regmap to MMIO (via `of_iomap()`), and a per-variant
IRQ handler is used depending on register layout.
v2:
- Refactor SCU IC driver to support variant-based initialization
- Add AST2700 compatible strings to YAML and header files
- Extend DT bindings in mfd and irqchip for AST2700
- Add IRQ handler logic for separate IER/ISR layout
Ryan Chen (4):
irqchip/aspeed-scu-ic: Refactor driver to support variant-based
initialization
dt-bindings: mfd: aspeed: Add AST2700 SCU compatibles
dt-bindings: interrupt-controller: aspeed: Add AST2700 SCU IC
compatibles
irqchip/aspeed-scu-ic: Add support AST2700 SCU interrupt controllers
.../aspeed,ast2500-scu-ic.yaml | 6 +-
.../bindings/mfd/aspeed,ast2x00-scu.yaml | 4 +
drivers/irqchip/irq-aspeed-scu-ic.c | 238 ++++++++++--------
.../interrupt-controller/aspeed-scu-ic.h | 14 ++
4 files changed, 163 insertions(+), 99 deletions(-)
--
2.34.1
More information about the Linux-aspeed
mailing list