Message ID | 20210902112520.475901-1-anup.patel@wdc.com |
---|---|
Headers | show |
Series | QEMU RISC-V AIA support | expand |
On Thu, Sep 2, 2021 at 7:26 PM Anup Patel <anup.patel@wdc.com> wrote: > > 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.24/riscv-interrupts-024.pdf > > This series adds RISC-V AIA support in QEMU which includes emulating all > AIA local CSRs, APLIC, and IMSIC. Only AIA local interrupt filtering is > not implemented because we don't have any local interrupt greater than 12. > > To enable AIA in QEMU, use one of the following: > 1) Only AIA local interrupt CSRs: Pass "x-aia=true" as CPU paramenter > in the QEMU command-line > 2) Only APLIC for virt machine: Pass "aia=aplic" as machine parameter > in the QEMU command-line > 3) Both APLIC and IMSIC for virt machine: Pass "aia=aplic-imsic" as > machine parameter in the QEMU command-line > 4) Both APLIC and IMSIC with 2 guest files for virt machine: Pass > "aia=aplic-imsic,aia-guests=2" as machine parameter in the QEMU > command-line > > To test series, we require OpenSBI and Linux with AIA support which can > be found in riscv_aia_v1 branch at: > https://github.com/avpatel/opensbi.git > https://github.com/avpatel/linux.git > > Changes since v1: > - Revamped whole series and created more granular patches > - Added HGEIE and HGEIP CSR emulation for H-extension > - Added APLIC emulation > - Added IMSIC emulation > Where is v1 of this series? It seems I cannot find it on the ML. Regards, Bin
On Sat, Sep 4, 2021 at 7:21 PM Bin Meng <bmeng.cn@gmail.com> wrote: > > On Thu, Sep 2, 2021 at 7:26 PM Anup Patel <anup.patel@wdc.com> wrote: > > > > 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.24/riscv-interrupts-024.pdf > > > > This series adds RISC-V AIA support in QEMU which includes emulating all > > AIA local CSRs, APLIC, and IMSIC. Only AIA local interrupt filtering is > > not implemented because we don't have any local interrupt greater than 12. > > > > To enable AIA in QEMU, use one of the following: > > 1) Only AIA local interrupt CSRs: Pass "x-aia=true" as CPU paramenter > > in the QEMU command-line > > 2) Only APLIC for virt machine: Pass "aia=aplic" as machine parameter > > in the QEMU command-line > > 3) Both APLIC and IMSIC for virt machine: Pass "aia=aplic-imsic" as > > machine parameter in the QEMU command-line > > 4) Both APLIC and IMSIC with 2 guest files for virt machine: Pass > > "aia=aplic-imsic,aia-guests=2" as machine parameter in the QEMU > > command-line > > > > To test series, we require OpenSBI and Linux with AIA support which can > > be found in riscv_aia_v1 branch at: > > https://github.com/avpatel/opensbi.git > > https://github.com/avpatel/linux.git > > > > Changes since v1: > > - Revamped whole series and created more granular patches > > - Added HGEIE and HGEIP CSR emulation for H-extension > > - Added APLIC emulation > > - Added IMSIC emulation > > > > Where is v1 of this series? It seems I cannot find it on the ML. The v1 series was pretty basic and only implemented AIA local interrupt CSRs. Here's the link: https://patchew.org/QEMU/20210514143242.377645-1-anup.patel@wdc.com/ Regards, Anup