[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] taget-i386: Broadwell CPU model
From: |
Andreas Färber |
Subject: |
Re: [Qemu-devel] [PATCH] taget-i386: Broadwell CPU model |
Date: |
Tue, 17 Jun 2014 22:34:16 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 |
"target"
Am 17.06.2014 22:11, schrieb Eduardo Habkost:
> This adds a new CPU model named "Broadwell". It has all the features
> from Haswell, plus PREFETCHW, RDSEED, ADX, SMAP.
>
> PREFETCHW was already supported as "3dnowprefetch".
>
> RDSEED, ADX was added on Linux v3.15-rc1.
>
> SMAP was added on Linux v3.15-rc2.
>
> Signed-off-by: Eduardo Habkost <address@hidden>
> Cc: Wang, Yong Y <address@hidden>
> Cc: Paolo Bonzini <address@hidden>
> Cc: Dugger, Donald D <address@hidden>
> ---
> target-i386/cpu.c | 34 ++++++++++++++++++++++++++++++++++
> 1 file changed, 34 insertions(+)
>
> diff --git a/target-i386/cpu.c b/target-i386/cpu.c
> index 8983457..027a9b5 100644
> --- a/target-i386/cpu.c
> +++ b/target-i386/cpu.c
> @@ -971,6 +971,40 @@ static X86CPUDefinition builtin_x86_defs[] = {
> .model_id = "Intel Core Processor (Haswell)",
> },
> {
> + .name = "Broadwell",
> + .level = 0xd,
> + .vendor = CPUID_VENDOR_INTEL,
> + .family = 6,
> + .model = 61,
> + .stepping = 2,
> + .features[FEAT_1_EDX] =
> + CPUID_SSE2 | CPUID_SSE | CPUID_FXSR | CPUID_MMX |
> + CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV |
> CPUID_MCA |
> + CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC | CPUID_CX8 |
> + CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC | CPUID_PSE |
> + CPUID_DE | CPUID_FP87,
The indentation looks inconsistent (1 off), although I don't see a tab
character in the mix...
> + .features[FEAT_1_ECX] =
> + CPUID_EXT_AVX | CPUID_EXT_XSAVE | CPUID_EXT_AES |
> + CPUID_EXT_POPCNT | CPUID_EXT_X2APIC | CPUID_EXT_SSE42 |
> + CPUID_EXT_SSE41 | CPUID_EXT_CX16 | CPUID_EXT_SSSE3 |
> + CPUID_EXT_PCLMULQDQ | CPUID_EXT_SSE3 |
> + CPUID_EXT_TSC_DEADLINE_TIMER | CPUID_EXT_FMA | CPUID_EXT_MOVBE |
> + CPUID_EXT_PCID,
> + .features[FEAT_8000_0001_EDX] =
> + CPUID_EXT2_LM | CPUID_EXT2_RDTSCP | CPUID_EXT2_NX |
> + CPUID_EXT2_SYSCALL,
> + .features[FEAT_8000_0001_ECX] =
> + CPUID_EXT3_LAHF_LM | CPUID_EXT3_3DNOWPREFETCH,
> + .features[FEAT_7_0_EBX] =
> + CPUID_7_0_EBX_FSGSBASE | CPUID_7_0_EBX_BMI1 |
> + CPUID_7_0_EBX_HLE | CPUID_7_0_EBX_AVX2 | CPUID_7_0_EBX_SMEP |
> + CPUID_7_0_EBX_BMI2 | CPUID_7_0_EBX_ERMS | CPUID_7_0_EBX_INVPCID |
> + CPUID_7_0_EBX_RTM | CPUID_7_0_EBX_RDSEED | CPUID_7_0_EBX_ADX |
> + CPUID_7_0_EBX_SMAP,
> + .xlevel = 0x8000000A,
> + .model_id = "Intel Core Processor (Broadwell)",
> + },
> + {
> .name = "Opteron_G1",
> .level = 5,
> .vendor = CPUID_VENDOR_AMD,
Apart from that, looks sane, so if someone can confirm the
Broadwell-specific values I'll be happy to fix the style and queue it
for 2.1.
Regards,
Andreas
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg