Commit 9bdba1b67b93247382cfbdf8f06c6386d70e9287

Authored by aliguori
1 parent eef26553

Add phenom CPU descriptor (Alexander Graf)

As part of my ongoing effort to make nested SVM useful, I started working to get
VMware ESX run inside KVM.

VMware couples itself pretty tightly to the CPUID, so it's a good idea to emulate
a machine that officially supports SVM and should thus exploit the powers of
nested virtualization.

This patch adds a Phenom CPU identifier, that resembles a real-world phenom
CPU as closely as possible.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6501 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 28 additions and 0 deletions
target-i386/helper.c
... ... @@ -137,6 +137,34 @@ static x86_def_t x86_defs[] = {
137 137 .model_id = "QEMU Virtual CPU version " QEMU_VERSION,
138 138 },
139 139 {
  140 + .name = "phenom",
  141 + .level = 5,
  142 + .vendor1 = CPUID_VENDOR_AMD_1,
  143 + .vendor2 = CPUID_VENDOR_AMD_2,
  144 + .vendor3 = CPUID_VENDOR_AMD_3,
  145 + .family = 16,
  146 + .model = 2,
  147 + .stepping = 3,
  148 + /* Missing: CPUID_VME, CPUID_HT */
  149 + .features = PPRO_FEATURES |
  150 + CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
  151 + CPUID_PSE36,
  152 + /* Missing: CPUID_EXT_CX16, CPUID_EXT_POPCNT */
  153 + .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR,
  154 + /* Missing: CPUID_EXT2_PDPE1GB, CPUID_EXT2_RDTSCP */
  155 + .ext2_features = (PPRO_FEATURES & 0x0183F3FF) |
  156 + CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX |
  157 + CPUID_EXT2_3DNOW | CPUID_EXT2_3DNOWEXT | CPUID_EXT2_MMXEXT |
  158 + CPUID_EXT2_FFXSR,
  159 + /* Missing: CPUID_EXT3_LAHF_LM, CPUID_EXT3_CMP_LEG, CPUID_EXT3_EXTAPIC,
  160 + CPUID_EXT3_CR8LEG, CPUID_EXT3_ABM, CPUID_EXT3_SSE4A,
  161 + CPUID_EXT3_MISALIGNSSE, CPUID_EXT3_3DNOWPREFETCH,
  162 + CPUID_EXT3_OSVW, CPUID_EXT3_IBS */
  163 + .ext3_features = CPUID_EXT3_SVM,
  164 + .xlevel = 0x8000001A,
  165 + .model_id = "AMD Phenom(tm) 9550 Quad-Core Processor"
  166 + },
  167 + {
140 168 .name = "core2duo",
141 169 .level = 10,
142 170 .family = 6,
... ...