RISC-V: KVM: Allow Zca, Zcf, Zcd and Zcb extensions for Guest/VM
Extend the KVM ISA extension ONE_REG interface to allow KVM user space to detect and enable Zca, Zcf, Zcd and Zcb extensions for Guest/VM. Signed-off-by: Clément Léger <cleger@rivosinc.com> Reviewed-by: Anup Patel <anup@brainfault.org> Acked-by: Anup Patel <anup@brainfault.org> Link: https://lore.kernel.org/r/20240619113529.676940-11-cleger@rivosinc.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
This commit is contained in:
parent
0ad70db5eb
commit
d964e8f2ae
@ -169,6 +169,10 @@ enum KVM_RISCV_ISA_EXT_ID {
|
|||||||
KVM_RISCV_ISA_EXT_ZACAS,
|
KVM_RISCV_ISA_EXT_ZACAS,
|
||||||
KVM_RISCV_ISA_EXT_SSCOFPMF,
|
KVM_RISCV_ISA_EXT_SSCOFPMF,
|
||||||
KVM_RISCV_ISA_EXT_ZIMOP,
|
KVM_RISCV_ISA_EXT_ZIMOP,
|
||||||
|
KVM_RISCV_ISA_EXT_ZCA,
|
||||||
|
KVM_RISCV_ISA_EXT_ZCB,
|
||||||
|
KVM_RISCV_ISA_EXT_ZCD,
|
||||||
|
KVM_RISCV_ISA_EXT_ZCF,
|
||||||
KVM_RISCV_ISA_EXT_MAX,
|
KVM_RISCV_ISA_EXT_MAX,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -49,6 +49,10 @@ static const unsigned long kvm_isa_ext_arr[] = {
|
|||||||
KVM_ISA_EXT_ARR(ZBKC),
|
KVM_ISA_EXT_ARR(ZBKC),
|
||||||
KVM_ISA_EXT_ARR(ZBKX),
|
KVM_ISA_EXT_ARR(ZBKX),
|
||||||
KVM_ISA_EXT_ARR(ZBS),
|
KVM_ISA_EXT_ARR(ZBS),
|
||||||
|
KVM_ISA_EXT_ARR(ZCA),
|
||||||
|
KVM_ISA_EXT_ARR(ZCB),
|
||||||
|
KVM_ISA_EXT_ARR(ZCD),
|
||||||
|
KVM_ISA_EXT_ARR(ZCF),
|
||||||
KVM_ISA_EXT_ARR(ZFA),
|
KVM_ISA_EXT_ARR(ZFA),
|
||||||
KVM_ISA_EXT_ARR(ZFH),
|
KVM_ISA_EXT_ARR(ZFH),
|
||||||
KVM_ISA_EXT_ARR(ZFHMIN),
|
KVM_ISA_EXT_ARR(ZFHMIN),
|
||||||
@ -134,6 +138,10 @@ static bool kvm_riscv_vcpu_isa_disable_allowed(unsigned long ext)
|
|||||||
case KVM_RISCV_ISA_EXT_ZBKC:
|
case KVM_RISCV_ISA_EXT_ZBKC:
|
||||||
case KVM_RISCV_ISA_EXT_ZBKX:
|
case KVM_RISCV_ISA_EXT_ZBKX:
|
||||||
case KVM_RISCV_ISA_EXT_ZBS:
|
case KVM_RISCV_ISA_EXT_ZBS:
|
||||||
|
case KVM_RISCV_ISA_EXT_ZCA:
|
||||||
|
case KVM_RISCV_ISA_EXT_ZCB:
|
||||||
|
case KVM_RISCV_ISA_EXT_ZCD:
|
||||||
|
case KVM_RISCV_ISA_EXT_ZCF:
|
||||||
case KVM_RISCV_ISA_EXT_ZFA:
|
case KVM_RISCV_ISA_EXT_ZFA:
|
||||||
case KVM_RISCV_ISA_EXT_ZFH:
|
case KVM_RISCV_ISA_EXT_ZFH:
|
||||||
case KVM_RISCV_ISA_EXT_ZFHMIN:
|
case KVM_RISCV_ISA_EXT_ZFHMIN:
|
||||||
|
Loading…
Reference in New Issue
Block a user