x86: boot: stub out unimplemented CPU feature words
authorH. Peter Anvin <hpa@zytor.com>
Fri, 15 Aug 2008 22:36:31 +0000 (15:36 -0700)
committerH. Peter Anvin <hpa@zytor.com>
Tue, 19 Aug 2008 01:22:17 +0000 (18:22 -0700)
The CPU feature detection code in the boot code is somewhat minimal,
and doesn't include all possible CPUID words.  In particular, it
doesn't contain the code for CPU feature words 2 (Transmeta),
3 (Linux-specific), 5 (VIA), or 7 (scattered).  Zero them out, so we
can still set those bits as known at compile time; in particular, this
allows creating a Linux-specific NOPL flag and have it required (and
therefore resolvable at compile time) in 64-bit mode.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/boot/cpucheck.c

index 7804389ee0059eb8f4be589cccd24a2623f9567f..19b14f7ef9f1c3945845ca9423e00ba2ba5851d8 100644 (file)
@@ -46,12 +46,12 @@ static const u32 req_flags[NCAPINTS] =
 {
        REQUIRED_MASK0,
        REQUIRED_MASK1,
-       REQUIRED_MASK2,
-       REQUIRED_MASK3,
+       0, /* REQUIRED_MASK2 not implemented in this file */
+       0, /* REQUIRED_MASK3 not implemented in this file */
        REQUIRED_MASK4,
-       REQUIRED_MASK5,
+       0, /* REQUIRED_MASK5 not implemented in this file */
        REQUIRED_MASK6,
-       REQUIRED_MASK7,
+       0, /* REQUIRED_MASK7 not implemented in this file */
 };
 
 #define A32(a, b, c, d) (((d) << 24)+((c) << 16)+((b) << 8)+(a))