From: Anup Patel <apatel@ventanamicro.com>
To: opensbi@lists.infradead.org
Subject: [PATCH 00/13] OpenSBI RISC-V AIA Support
Date: Tue, 4 Jan 2022 15:39:39 +0530 [thread overview]
Message-ID: <20220104100952.127448-1-apatel@ventanamicro.com> (raw)
The advanced interrupt architecture (AIA) extends the per-HART local
interrupt support. Along with this, it also adds IMSIC (MSI contrllor)
and Advanced PLIC (wired interrupt controller).
The latest AIA draft specification can be found here:
https://github.com/riscv/riscv-aia/releases/download/0.2-draft.28/riscv-interrupts-028.pdf
To test series, we require:
1) QEMU from riscv_aia_v6 branch of https://github.com/avpatel/qemu.git
2) Linux from riscv_aia_v1 branch of https://github.com/avpatel/linux.git
This series can be found riscv_aia_v1 branch at:
https://github.com/avpatel/opensbi.git
Anup Patel (13):
include: sbi: Add AIA related CSR defines
lib: sbi: Detect AIA CSRs at boot-time
lib: sbi: Use AIA CSRs for local interrupts when available
lib: sbi: Add sbi_trap_set_external_irqfn() API
lib: utils/irqchip: Allow multiple FDT irqchip drivers
include: sbi: Introduce nascent_init() platform callback
lib: sbi: Enable mie.MEIE bit for IPIs based on external interrupts.
lib: utils/irqchip: Add IMSIC library
lib: utils/irqchip: Add FDT based driver for IMSIC
lib: utils: Disable appropriate IMSIC DT nodes in fdt_fixups()
lib: utils/irqchip: Add APLIC initialization library
lib: utils/irqchip: Add FDT based driver for APLIC
lib: utils: Disable appropriate APLIC DT nodes in fdt_fixups()
include/sbi/riscv_encoding.h | 76 +++++++
include/sbi/sbi_hart.h | 4 +-
include/sbi/sbi_platform.h | 17 ++
include/sbi/sbi_trap.h | 2 +
include/sbi_utils/fdt/fdt_fixup.h | 29 ++-
include/sbi_utils/fdt/fdt_helper.h | 10 +
include/sbi_utils/irqchip/aplic.h | 47 +++++
include/sbi_utils/irqchip/imsic.h | 50 +++++
lib/sbi/sbi_hart.c | 23 +++
lib/sbi/sbi_hsm.c | 4 +-
lib/sbi/sbi_init.c | 17 +-
lib/sbi/sbi_trap.c | 86 +++++++-
lib/utils/fdt/fdt_fixup.c | 43 +++-
lib/utils/fdt/fdt_helper.c | 262 +++++++++++++++++++++++
lib/utils/irqchip/aplic.c | 279 +++++++++++++++++++++++++
lib/utils/irqchip/fdt_irqchip.c | 41 +++-
lib/utils/irqchip/fdt_irqchip_aplic.c | 56 +++++
lib/utils/irqchip/fdt_irqchip_imsic.c | 106 ++++++++++
lib/utils/irqchip/imsic.c | 287 ++++++++++++++++++++++++++
lib/utils/irqchip/objects.mk | 4 +
platform/generic/platform.c | 12 ++
21 files changed, 1427 insertions(+), 28 deletions(-)
create mode 100644 include/sbi_utils/irqchip/aplic.h
create mode 100644 include/sbi_utils/irqchip/imsic.h
create mode 100644 lib/utils/irqchip/aplic.c
create mode 100644 lib/utils/irqchip/fdt_irqchip_aplic.c
create mode 100644 lib/utils/irqchip/fdt_irqchip_imsic.c
create mode 100644 lib/utils/irqchip/imsic.c
--
2.25.1
next reply other threads:[~2022-01-04 10:09 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-04 10:09 Anup Patel [this message]
2022-01-04 10:09 ` [PATCH 01/13] include: sbi: Add AIA related CSR defines Anup Patel
2022-01-04 10:09 ` [PATCH 02/13] lib: sbi: Detect AIA CSRs at boot-time Anup Patel
[not found] ` <CAOnJCUJo9pT2s6dPxWAphFavLirEPJ_tqSk2Y-rzLXM2mXFMng@mail.gmail.com>
2022-02-09 11:30 ` Anup Patel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220104100952.127448-1-apatel@ventanamicro.com \
--to=apatel@ventanamicro.com \
--cc=opensbi@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.