mirror of https://github.com/xemu-project/xemu.git
target/arm/kvm: Move kvm_arm_reg_syncs_via_cpreg_list and unexport
Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Gavin Shan <gshan@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org> [PMM: merged two duplicate comments, as suggested by Gavin] Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
676fe6846f
commit
f38ce925eb
|
@ -740,6 +740,25 @@ static uint64_t *kvm_arm_get_cpreg_ptr(ARMCPU *cpu, uint64_t regidx)
|
||||||
return &cpu->cpreg_values[res - cpu->cpreg_indexes];
|
return &cpu->cpreg_values[res - cpu->cpreg_indexes];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* kvm_arm_reg_syncs_via_cpreg_list:
|
||||||
|
* @regidx: KVM register index
|
||||||
|
*
|
||||||
|
* Return true if this KVM register should be synchronized via the
|
||||||
|
* cpreg list of arbitrary system registers, false if it is synchronized
|
||||||
|
* by hand using code in kvm_arch_get/put_registers().
|
||||||
|
*/
|
||||||
|
static bool kvm_arm_reg_syncs_via_cpreg_list(uint64_t regidx)
|
||||||
|
{
|
||||||
|
switch (regidx & KVM_REG_ARM_COPROC_MASK) {
|
||||||
|
case KVM_REG_ARM_CORE:
|
||||||
|
case KVM_REG_ARM64_SVE:
|
||||||
|
return false;
|
||||||
|
default:
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Initialize the ARMCPU cpreg list according to the kernel's
|
/* Initialize the ARMCPU cpreg list according to the kernel's
|
||||||
* definition of what CPU registers it knows about (and throw away
|
* definition of what CPU registers it knows about (and throw away
|
||||||
* the previous TCG-created cpreg list).
|
* the previous TCG-created cpreg list).
|
||||||
|
|
|
@ -346,21 +346,6 @@ int kvm_arch_destroy_vcpu(CPUState *cs)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool kvm_arm_reg_syncs_via_cpreg_list(uint64_t regidx)
|
|
||||||
{
|
|
||||||
/* Return true if the regidx is a register we should synchronize
|
|
||||||
* via the cpreg_tuples array (ie is not a core or sve reg that
|
|
||||||
* we sync by hand in kvm_arch_get/put_registers())
|
|
||||||
*/
|
|
||||||
switch (regidx & KVM_REG_ARM_COPROC_MASK) {
|
|
||||||
case KVM_REG_ARM_CORE:
|
|
||||||
case KVM_REG_ARM64_SVE:
|
|
||||||
return false;
|
|
||||||
default:
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Callers must hold the iothread mutex lock */
|
/* Callers must hold the iothread mutex lock */
|
||||||
static void kvm_inject_arm_sea(CPUState *c)
|
static void kvm_inject_arm_sea(CPUState *c)
|
||||||
{
|
{
|
||||||
|
|
|
@ -77,16 +77,6 @@ void kvm_arm_register_device(MemoryRegion *mr, uint64_t devid, uint64_t group,
|
||||||
*/
|
*/
|
||||||
int kvm_arm_init_cpreg_list(ARMCPU *cpu);
|
int kvm_arm_init_cpreg_list(ARMCPU *cpu);
|
||||||
|
|
||||||
/**
|
|
||||||
* kvm_arm_reg_syncs_via_cpreg_list:
|
|
||||||
* @regidx: KVM register index
|
|
||||||
*
|
|
||||||
* Return true if this KVM register should be synchronized via the
|
|
||||||
* cpreg list of arbitrary system registers, false if it is synchronized
|
|
||||||
* by hand using code in kvm_arch_get/put_registers().
|
|
||||||
*/
|
|
||||||
bool kvm_arm_reg_syncs_via_cpreg_list(uint64_t regidx);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* write_list_to_kvmstate:
|
* write_list_to_kvmstate:
|
||||||
* @cpu: ARMCPU
|
* @cpu: ARMCPU
|
||||||
|
|
Loading…
Reference in New Issue