OpenCloudOS-Kernel/arch/riscv/kvm
Anup Patel 8a061562e2 RISC-V: KVM: Add extensible CSR emulation framework
We add an extensible CSR emulation framework which is based upon the
existing system instruction emulation. This will be useful to upcoming
AIA, PMU, Nested and other virtualization features.

The CSR emulation framework also has provision to emulate CSR in user
space but this will be used only in very specific cases such as AIA
IMSIC CSR emulation in user space or vendor specific CSR emulation
in user space.

By default, all CSRs not handled by KVM RISC-V will be redirected back
to Guest VCPU as illegal instruction trap.

Signed-off-by: Anup Patel <apatel@ventanamicro.com>
Signed-off-by: Anup Patel <anup@brainfault.org>
2022-07-29 17:14:53 +05:30
..
Kconfig riscv: do not select non-existing config ANON_INODES 2021-10-22 05:53:37 -04:00
Makefile RISC-V: KVM: Factor-out instruction emulation into separate sources 2022-07-29 17:14:40 +05:30
main.c RISC-V: KVM: Add Sv57x4 mode support for G-stage 2022-05-20 09:09:04 +05:30
mmu.c RISC-V: KVM: Fix variable spelling mistake 2022-07-29 17:14:17 +05:30
tlb.c RISC-V: KVM: Cleanup stale TLB entries when host CPU changes 2022-05-20 09:09:18 +05:30
vcpu.c RISC-V: KVM: Add extensible CSR emulation framework 2022-07-29 17:14:53 +05:30
vcpu_exit.c RISC-V: KVM: Factor-out instruction emulation into separate sources 2022-07-29 17:14:40 +05:30
vcpu_fp.c RISC-V: KVM: Improve ISA extension by using a bitmap 2022-07-29 17:14:11 +05:30
vcpu_insn.c RISC-V: KVM: Add extensible CSR emulation framework 2022-07-29 17:14:53 +05:30
vcpu_sbi.c KVM: fix bad user ABI for KVM_EXIT_SYSTEM_EVENT 2022-04-29 12:38:22 -04:00
vcpu_sbi_base.c RISC-V: KVM: Fix SBI implementation version 2022-02-02 18:58:06 +05:30
vcpu_sbi_hsm.c RISC-V: KVM: Implement SBI HSM suspend call 2022-03-11 19:02:39 +05:30
vcpu_sbi_replace.c RISC-V: KVM: Add remote HFENCE functions based on VCPU requests 2022-05-20 09:09:15 +05:30
vcpu_sbi_v01.c RISC-V: KVM: Add remote HFENCE functions based on VCPU requests 2022-05-20 09:09:15 +05:30
vcpu_switch.S RISC-V: KVM: Refine __kvm_riscv_switch_to() implementation 2022-03-11 19:02:22 +05:30
vcpu_timer.c RISC-V: KVM: Make kvm_riscv_guest_timer_init a void function 2022-07-29 17:14:26 +05:30
vm.c RISC-V: KVM: Make kvm_riscv_guest_timer_init a void function 2022-07-29 17:14:26 +05:30
vmid.c RISC-V: KVM: fix typos in comments 2022-06-09 09:18:15 +05:30