mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-05-05 23:16:59 +00:00
Instead of "#include <x86/foo.h>", use "#include <asm/foo.h>". In other words, we are adopting the same practice in Linux kernel. Tracked-On: #5920 Signed-off-by: Liang Yi <yi.liang@intel.com> Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
33 lines
653 B
C
33 lines
653 B
C
/*
|
|
* Copyright (C) 2018 Intel Corporation. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef VCPUID_H_
|
|
#define VCPUID_H_
|
|
|
|
#define CPUID_CHECK_SUBLEAF (1U << 0U)
|
|
#define MAX_VM_VCPUID_ENTRIES 64U
|
|
|
|
/* Guest capability flags reported by CPUID */
|
|
#define GUEST_CAPS_PRIVILEGE_VM (1U << 0U)
|
|
|
|
struct vcpuid_entry {
|
|
uint32_t eax;
|
|
uint32_t ebx;
|
|
uint32_t ecx;
|
|
uint32_t edx;
|
|
uint32_t leaf;
|
|
uint32_t subleaf;
|
|
uint32_t flags;
|
|
uint32_t padding;
|
|
};
|
|
|
|
int32_t set_vcpuid_entries(struct acrn_vm *vm);
|
|
void guest_cpuid(struct acrn_vcpu *vcpu,
|
|
uint32_t *eax, uint32_t *ebx,
|
|
uint32_t *ecx, uint32_t *edx);
|
|
|
|
#endif /* VCPUID_H_ */
|