This series adds support for KVM AIA in RISC-V architecture.
In order to test these patches, we require Linux with KVM AIA support which can
be found in the riscv_kvm_aia_hwaccel_v1 branch at
https://github.com/avpatel/linux.git
---
v4:
- update the linux header by the scripts/update-linux-headers.sh in PATCH1
- remove the checking for "aplic_m" before creating S-mode APLIC device in
PATCH2
- add more setting when we initialize the KVM AIA chip in PATCH4
- fix msi message delivery and the APLIC devices emulation in PATCH5
- fix the AIA devices mapping with NUMA enabled in PATCH6
- add "kvm-aia" parameter to sepecify the KVM AIA mode in PATCH6
v3:
- fix typo
- tag the linux-header patch as placeholder
v2:
- rebase to riscv-to-apply.next
- update the linux header by the scripts/update-linux-headers.sh
Yong-Xuan Wang (6):
update-linux-headers: sync-up header with Linux for KVM AIA support
placeholder
target/riscv: support the AIA device emulation with KVM enabled
target/riscv: check the in-kernel irqchip support
target/riscv: Create an KVM AIA irqchip
target/riscv: update APLIC and IMSIC to support KVM AIA
target/riscv: select KVM AIA in riscv virt machine
hw/intc/riscv_aplic.c | 58 +++++--
hw/intc/riscv_imsic.c | 26 ++-
hw/riscv/virt.c | 297 +++++++++++++++++++++-------------
include/hw/riscv/virt.h | 1 +
linux-headers/asm-riscv/kvm.h | 123 +++++++++++++-
linux-headers/linux/kvm.h | 2 +
target/riscv/kvm.c | 176 +++++++++++++++++++-
target/riscv/kvm_riscv.h | 6 +
8 files changed, 554 insertions(+), 135 deletions(-)
--
2.17.1