This patches add the definition of a SandyBridge CPU model. Summary of differences: Flags present on actual hardware, but not on the added model definition: - pbe, tm, ht, ss, acpi, vme, xTPR, tm2, eist, smx: host-specific features, not exposed to guest. - ds, ds-cpl, dtes64, pdcm: emulation not supported by KVM (although it may be added in the future if implementing PMU virtualization) - pcid, vmx, monitor: not emulated by Qemu/KVM right now. - osxsave: set by the guest OS, not by Qemu. Flags added, that were not present on Westmere model: - xsave: already supported by Qemu - avx, pclmulqdq: all new state the new instructions could use is handled by xsave state loading/saving code. - tsc-deadline, x2apic, rdtscp: already supported by Qemu/KVM. Below there's a comparison of the features on the current Westmere CPU model, and the SandyBridge CPU model. - The "full" line contains the flags found on actual hardware. - The "missing" line shows the flags that are present on actual hardware, but not on the added SandyBridge model. - The "new" line shows the flags that were not on the Westmere model, but are on SandyBridge. feature_edx: Westmere: sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu full: pbe tm ht ss sse2 sse fxsr mmx ds acpi clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pge msr tsc pse de vme fpu SandyBridge: sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu missing: pbe tm ht ss ds acpi vme feature_ecx: Westmere: aes popcnt sse4.2 sse4.1 cx16 ssse3 sse3 full: avx osxsave xsave aes tsc-deadline popcnt x2apic sse4.2 sse4.1 pcid pdcm xTPR cx16 ssse3 tm2 eist smx vmx ds-cpl monitor dtes64 pclmulqdq sse3 SandyBridge: avx xsave aes tsc-deadline popcnt x2apic sse4.2 sse4.1 cx16 ssse3 pclmulqdq sse3 missing: osxsave pcid pdcm xTPR tm2 eist smx vmx ds-cpl monitor dtes64 new: avx xsave tsc-deadline x2apic pclmulqdq extfeature_edx: Westmere: i64 nx syscall full: i64 rdtscp nx syscall SandyBridge: i64 rdtscp nx syscall new: rdtscp extfeature_ecx: Westmere: lahf_lm full: lahf_lm SandyBridge: lahf_lm Cc: "Dugger, Donald D" <donald.d.dugger@intel.com> Cc: "Zhang, Xiantao" <xiantao.zhang@intel.com> Acked-by: Xiantao Zhang <xiantao.zhang@intel.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
115 lines
3.7 KiB
Plaintext
115 lines
3.7 KiB
Plaintext
# x86 CPU MODELS
|
|
|
|
[cpudef]
|
|
name = "Conroe"
|
|
level = "2"
|
|
vendor = "GenuineIntel"
|
|
family = "6"
|
|
model = "2"
|
|
stepping = "3"
|
|
feature_edx = "sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu"
|
|
feature_ecx = "ssse3 sse3"
|
|
extfeature_edx = "i64 xd syscall"
|
|
extfeature_ecx = "lahf_lm"
|
|
xlevel = "0x8000000A"
|
|
model_id = "Intel Celeron_4x0 (Conroe/Merom Class Core 2)"
|
|
|
|
[cpudef]
|
|
name = "Penryn"
|
|
level = "2"
|
|
vendor = "GenuineIntel"
|
|
family = "6"
|
|
model = "2"
|
|
stepping = "3"
|
|
feature_edx = "sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu"
|
|
feature_ecx = "sse4.1 cx16 ssse3 sse3"
|
|
extfeature_edx = "i64 xd syscall"
|
|
extfeature_ecx = "lahf_lm"
|
|
xlevel = "0x8000000A"
|
|
model_id = "Intel Core 2 Duo P9xxx (Penryn Class Core 2)"
|
|
|
|
[cpudef]
|
|
name = "Nehalem"
|
|
level = "2"
|
|
vendor = "GenuineIntel"
|
|
family = "6"
|
|
model = "2"
|
|
stepping = "3"
|
|
feature_edx = "sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu"
|
|
feature_ecx = "popcnt sse4.2 sse4.1 cx16 ssse3 sse3"
|
|
extfeature_edx = "i64 syscall xd"
|
|
extfeature_ecx = "lahf_lm"
|
|
xlevel = "0x8000000A"
|
|
model_id = "Intel Core i7 9xx (Nehalem Class Core i7)"
|
|
|
|
[cpudef]
|
|
name = "Westmere"
|
|
level = "11"
|
|
vendor = "GenuineIntel"
|
|
family = "6"
|
|
model = "44"
|
|
stepping = "1"
|
|
feature_edx = "sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu"
|
|
feature_ecx = "aes popcnt sse4.2 sse4.1 cx16 ssse3 sse3"
|
|
extfeature_edx = "i64 syscall xd"
|
|
extfeature_ecx = "lahf_lm"
|
|
xlevel = "0x8000000A"
|
|
model_id = "Westmere E56xx/L56xx/X56xx (Nehalem-C)"
|
|
|
|
[cpudef]
|
|
name = "SandyBridge"
|
|
level = "0xd"
|
|
vendor = "GenuineIntel"
|
|
family = "6"
|
|
model = "42"
|
|
stepping = "1"
|
|
feature_edx = " sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu"
|
|
feature_ecx = "avx xsave aes tsc-deadline popcnt x2apic sse4.2 sse4.1 cx16 ssse3 pclmulqdq sse3"
|
|
extfeature_edx = "i64 rdtscp nx syscall "
|
|
extfeature_ecx = "lahf_lm"
|
|
xlevel = "0x8000000A"
|
|
model_id = "Intel Xeon E312xx (Sandy Bridge)"
|
|
|
|
[cpudef]
|
|
name = "Opteron_G1"
|
|
level = "5"
|
|
vendor = "AuthenticAMD"
|
|
family = "15"
|
|
model = "6"
|
|
stepping = "1"
|
|
feature_edx = "sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu"
|
|
feature_ecx = "sse3"
|
|
extfeature_edx = "lm fxsr mmx nx pse36 pat cmov mca pge mtrr syscall apic cx8 mce pae msr tsc pse de fpu"
|
|
extfeature_ecx = " "
|
|
xlevel = "0x80000008"
|
|
model_id = "AMD Opteron 240 (Gen 1 Class Opteron)"
|
|
|
|
[cpudef]
|
|
name = "Opteron_G2"
|
|
level = "5"
|
|
vendor = "AuthenticAMD"
|
|
family = "15"
|
|
model = "6"
|
|
stepping = "1"
|
|
feature_edx = "sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu"
|
|
feature_ecx = "cx16 sse3"
|
|
extfeature_edx = "lm rdtscp fxsr mmx nx pse36 pat cmov mca pge mtrr syscall apic cx8 mce pae msr tsc pse de fpu"
|
|
extfeature_ecx = "svm lahf_lm"
|
|
xlevel = "0x80000008"
|
|
model_id = "AMD Opteron 22xx (Gen 2 Class Opteron)"
|
|
|
|
[cpudef]
|
|
name = "Opteron_G3"
|
|
level = "5"
|
|
vendor = "AuthenticAMD"
|
|
family = "15"
|
|
model = "6"
|
|
stepping = "1"
|
|
feature_edx = "sse2 sse fxsr mmx clflush pse36 pat cmov mca pge mtrr sep apic cx8 mce pae msr tsc pse de fpu"
|
|
feature_ecx = "popcnt cx16 monitor sse3"
|
|
extfeature_edx = "lm rdtscp fxsr mmx nx pse36 pat cmov mca pge mtrr syscall apic cx8 mce pae msr tsc pse de fpu"
|
|
extfeature_ecx = "misalignsse sse4a abm svm lahf_lm"
|
|
xlevel = "0x80000008"
|
|
model_id = "AMD Opteron 23xx (Gen 3 Class Opteron)"
|
|
|