xref: /linux/Documentation/virt/acrn/cpuid.rst (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1.. SPDX-License-Identifier: GPL-2.0
2
3===============
4ACRN CPUID bits
5===============
6
7A guest VM running on an ACRN hypervisor can check some of its features using
8CPUID.
9
10ACRN cpuid functions are:
11
12function: 0x40000000
13
14returns::
15
16   eax = 0x40000010
17   ebx = 0x4e524341
18   ecx = 0x4e524341
19   edx = 0x4e524341
20
21Note that this value in ebx, ecx and edx corresponds to the string
22"ACRNACRNACRN". The value in eax corresponds to the maximum cpuid function
23present in this leaf, and will be updated if more functions are added in the
24future.
25
26function: define ACRN_CPUID_FEATURES (0x40000001)
27
28returns::
29
30          ebx, ecx, edx
31          eax = an OR'ed group of (1 << flag)
32
33where ``flag`` is defined as below:
34
35================================= =========== ================================
36flag                              value       meaning
37================================= =========== ================================
38ACRN_FEATURE_PRIVILEGED_VM        0           guest VM is a privileged VM
39================================= =========== ================================
40
41function: 0x40000010
42
43returns::
44
45          ebx, ecx, edx
46          eax = (Virtual) TSC frequency in kHz.
47