summaryrefslogtreecommitdiff
path: root/sys/arch
diff options
context:
space:
mode:
authorTom Cosgrove <tom@cvs.openbsd.org>2007-11-25 10:50:14 +0000
committerTom Cosgrove <tom@cvs.openbsd.org>2007-11-25 10:50:14 +0000
commitb49801085048619213c1789bbeccb99abeef5faf (patch)
tree0676975f3003b3047e190d53cf1c0ab4513827ca /sys/arch
parent5fe706a1709847c5281f11079f753ec034fb0e21 (diff)
Add entries for the Transmeta Efficeon CPU to the CPUID table.
Without this we think it's an 80386-compatible, which is no longer supported. Problem found, and solution tested, by Anders Langworthy (anders (at) psilanthropy (dot) org); thanks. Initial suggestion for fix by Travers Buda (traversbuda (at) gmail (dot) com). ok deraadt@
Diffstat (limited to 'sys/arch')
-rw-r--r--sys/arch/i386/i386/machdep.c49
1 files changed, 47 insertions, 2 deletions
diff --git a/sys/arch/i386/i386/machdep.c b/sys/arch/i386/i386/machdep.c
index 18048c55d47..eba26d4a1b0 100644
--- a/sys/arch/i386/i386/machdep.c
+++ b/sys/arch/i386/i386/machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: machdep.c,v 1.411 2007/11/12 01:17:41 pascoe Exp $ */
+/* $OpenBSD: machdep.c,v 1.412 2007/11/25 10:50:13 tom Exp $ */
/* $NetBSD: machdep.c,v 1.214 1996/11/10 03:16:17 thorpej Exp $ */
/*-
@@ -931,6 +931,51 @@ const struct cpu_cpuid_nameclass i386_cpuid_cpus[] = {
"686 class" /* Default */
},
NULL
+ },
+ /* Family 7 */
+ {
+ CPUCLASS_686,
+ } ,
+ /* Family 8 */
+ {
+ CPUCLASS_686,
+ } ,
+ /* Family 9 */
+ {
+ CPUCLASS_686,
+ } ,
+ /* Family A */
+ {
+ CPUCLASS_686,
+ } ,
+ /* Family B */
+ {
+ CPUCLASS_686,
+ } ,
+ /* Family C */
+ {
+ CPUCLASS_686,
+ } ,
+ /* Family D */
+ {
+ CPUCLASS_686,
+ } ,
+ /* Family E */
+ {
+ CPUCLASS_686,
+ } ,
+ /* Family F */
+ {
+ /* Extended processor family - Transmeta Efficeon */
+ CPUCLASS_686,
+ {
+ 0, 0, "TM8000", "TM8000",
+ 0, 0, 0, 0,
+ 0, 0, 0, 0,
+ 0, 0, 0, 0,
+ "TM8000" /* Default */
+ },
+ tm86_cpu_setup
} }
},
{
@@ -1493,7 +1538,7 @@ intel686_p4_cpu_setup(struct cpu_info *ci)
void
tm86_cpu_setup(struct cpu_info *ci)
{
-#if !defined(SMALL_KERNEL) && defined(I586_CPU)
+#if !defined(SMALL_KERNEL) && (defined(I586_CPU) || defined(I686_CPU))
longrun_init();
#endif
}