Revision 8560efed

b/target-i386/cpuid.c
235 235
          CPUID_MTRR | CPUID_PGE | CPUID_MCA | CPUID_CMOV | CPUID_PAT | \
236 236
          CPUID_PSE36 | CPUID_CLFLUSH | CPUID_ACPI | CPUID_MMX | \
237 237
          CPUID_FXSR | CPUID_SSE | CPUID_SSE2 | CPUID_SS)
238
          /* partly implemented:
239
          CPUID_MTRR, CPUID_MCA, CPUID_CLFLUSH (needed for Win64)
240
          CPUID_PSE36 (needed for Solaris) */
241
          /* missing:
242
          CPUID_VME, CPUID_DTS, CPUID_SS, CPUID_HT, CPUID_TM, CPUID_PBE */
238 243
#define TCG_EXT_FEATURES (CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | \
239 244
          CPUID_EXT_CX16 | CPUID_EXT_POPCNT | CPUID_EXT_XSAVE | \
240 245
          CPUID_EXT_HYPERVISOR)
246
          /* missing:
247
          CPUID_EXT_DTES64, CPUID_EXT_DSCPL, CPUID_EXT_VMX, CPUID_EXT_EST,
248
          CPUID_EXT_TM2, CPUID_EXT_XTPR, CPUID_EXT_PDCM */
241 249
#define TCG_EXT2_FEATURES ((TCG_FEATURES & EXT2_FEATURE_MASK) | \
242 250
          CPUID_EXT2_NX | CPUID_EXT2_MMXEXT | CPUID_EXT2_RDTSCP | \
243 251
          CPUID_EXT2_3DNOW | CPUID_EXT2_3DNOWEXT)
252
          /* missing:
253
          CPUID_EXT2_PDPE1GB */
244 254
#define TCG_EXT3_FEATURES (CPUID_EXT3_LAHF_LM | CPUID_EXT3_SVM | \
245 255
          CPUID_EXT3_CR8LEG | CPUID_EXT3_ABM | CPUID_EXT3_SSE4A)
246 256

  
......
261 271
        .model = 2,
262 272
        .stepping = 3,
263 273
        .features = PPRO_FEATURES |
264
        /* these features are needed for Win64 and aren't fully implemented */
265 274
            CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
266
        /* this feature is needed for Solaris and isn't fully implemented */
267 275
            CPUID_PSE36,
268 276
        .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_CX16 | CPUID_EXT_POPCNT,
269 277
        .ext2_features = (PPRO_FEATURES & EXT2_FEATURE_MASK) |
......
282 290
        .family = 16,
283 291
        .model = 2,
284 292
        .stepping = 3,
285
        /* Missing: CPUID_VME, CPUID_HT */
286 293
        .features = PPRO_FEATURES |
287 294
            CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
288
            CPUID_PSE36,
295
            CPUID_PSE36 | CPUID_VME | CPUID_HT,
289 296
        .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_CX16 |
290 297
            CPUID_EXT_POPCNT,
291
        /* Missing: CPUID_EXT2_PDPE1GB, CPUID_EXT2_RDTSCP */
292 298
        .ext2_features = (PPRO_FEATURES & EXT2_FEATURE_MASK) |
293 299
            CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX |
294 300
            CPUID_EXT2_3DNOW | CPUID_EXT2_3DNOWEXT | CPUID_EXT2_MMXEXT |
295
            CPUID_EXT2_FFXSR,
301
            CPUID_EXT2_FFXSR | CPUID_EXT2_PDPE1GB | CPUID_EXT2_RDTSCP,
296 302
        /* Missing: CPUID_EXT3_CMP_LEG, CPUID_EXT3_EXTAPIC,
297 303
                    CPUID_EXT3_CR8LEG,
298 304
                    CPUID_EXT3_MISALIGNSSE, CPUID_EXT3_3DNOWPREFETCH,
......
308 314
        .family = 6,
309 315
        .model = 15,
310 316
        .stepping = 11,
311
	/* The original CPU also implements these features:
312
               CPUID_VME, CPUID_DTS, CPUID_ACPI, CPUID_SS, CPUID_HT,
313
               CPUID_TM, CPUID_PBE */
314 317
        .features = PPRO_FEATURES |
315 318
            CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
316
            CPUID_PSE36,
317
	/* The original CPU also implements these ext features:
318
               CPUID_EXT_DTES64, CPUID_EXT_DSCPL, CPUID_EXT_VMX, CPUID_EXT_EST,
319
               CPUID_EXT_TM2, CPUID_EXT_CX16, CPUID_EXT_XTPR, CPUID_EXT_PDCM */
320
        .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_SSSE3,
319
            CPUID_PSE36 | CPUID_VME | CPUID_DTS | CPUID_ACPI | CPUID_SS |
320
            CPUID_HT | CPUID_TM | CPUID_PBE,
321
        .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_SSSE3 |
322
            CPUID_EXT_DTES64 | CPUID_EXT_DSCPL | CPUID_EXT_VMX | CPUID_EXT_EST |
323
            CPUID_EXT_TM2 | CPUID_EXT_CX16 | CPUID_EXT_XTPR | CPUID_EXT_PDCM,
321 324
        .ext2_features = CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
322 325
        .ext3_features = CPUID_EXT3_LAHF_LM,
323 326
        .xlevel = 0x80000008,
......
366 369
        .family = 6,
367 370
        .model = 14,
368 371
        .stepping = 8,
369
        /* The original CPU also implements these features:
370
               CPUID_DTS, CPUID_ACPI, CPUID_SS, CPUID_HT,
371
               CPUID_TM, CPUID_PBE */
372 372
        .features = PPRO_FEATURES | CPUID_VME |
373
            CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA,
374
        /* The original CPU also implements these ext features:
375
               CPUID_EXT_VMX, CPUID_EXT_EST, CPUID_EXT_TM2, CPUID_EXT_XTPR,
376
               CPUID_EXT_PDCM */
377
        .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR,
373
            CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA | CPUID_DTS | CPUID_ACPI |
374
            CPUID_SS | CPUID_HT | CPUID_TM | CPUID_PBE,
375
        .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_VMX |
376
            CPUID_EXT_EST | CPUID_EXT_TM2 | CPUID_EXT_XTPR | CPUID_EXT_PDCM,
378 377
        .ext2_features = CPUID_EXT2_NX,
379 378
        .xlevel = 0x80000008,
380 379
        .model_id = "Genuine Intel(R) CPU           T2600  @ 2.16GHz",
......
438 437
        .model = 28,
439 438
        .stepping = 2,
440 439
        .features = PPRO_FEATURES |
441
            CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA | CPUID_VME,
442
            /* Missing: CPUID_DTS | CPUID_ACPI | CPUID_SS |
443
             * CPUID_HT | CPUID_TM | CPUID_PBE */
440
            CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA | CPUID_VME | CPUID_DTS |
441
            CPUID_ACPI | CPUID_SS | CPUID_HT | CPUID_TM | CPUID_PBE,
444 442
            /* Some CPUs got no CPUID_SEP */
445
        .ext_features = CPUID_EXT_MONITOR |
446
            CPUID_EXT_SSE3 /* PNI */ | CPUID_EXT_SSSE3,
447
            /* Missing: CPUID_EXT_DSCPL | CPUID_EXT_EST |
448
             * CPUID_EXT_TM2 | CPUID_EXT_XTPR */
443
        .ext_features = CPUID_EXT_SSE3 | CPUID_EXT_MONITOR | CPUID_EXT_SSSE3 |
444
            CPUID_EXT_DSCPL | CPUID_EXT_EST | CPUID_EXT_TM2 | CPUID_EXT_XTPR,
449 445
        .ext2_features = (PPRO_FEATURES & EXT2_FEATURE_MASK) | CPUID_EXT2_NX,
450
        /* Missing: .ext3_features = CPUID_EXT3_LAHF_LM */
446
        .ext3_features = CPUID_EXT3_LAHF_LM,
451 447
        .xlevel = 0x8000000A,
452 448
        .model_id = "Intel(R) Atom(TM) CPU N270   @ 1.60GHz",
453 449
    },

Also available in: Unified diff