Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Feb 2008 19:49:14 -0500
From:      Michael Proto <mike@jellydonut.org>
To:        Karl Denninger <karl@denninger.net>
Cc:        freebsd-embedded@freebsd.org
Subject:   Re: VIA EDEN board-based unit
Message-ID:  <47B8D60A.70000@jellydonut.org>
In-Reply-To: <47B50E1B.4000102@denninger.net>
References:  <47B50E1B.4000102@denninger.net>

next in thread | previous in thread | raw e-mail | index | archive | help

Karl Denninger wrote:
> I was able to load it successfully off a CD.
>
> The PXE boot fails.  It loads the kernel, and then chokes.  No idea why.
>
> This is what the system identifies as:
>
> Copyright (c) 1992-2007 The FreeBSD Project.
> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
>        The Regents of the University of California. All rights reserved.
> FreeBSD is a registered trademark of The FreeBSD Foundation.
> FreeBSD 6.2-RELEASE #0: Fri Jan 12 10:40:27 UTC 2007
>    root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC
> Timecounter "i8254" frequency 1193182 Hz quality 0
> CPU: VIA/IDT Unknown (1196.92-MHz 686-class CPU)
>  Origin = "CentaurHauls"  Id = 0x6d0  Stepping = 0
>


Completely unrelated, but may save you a search later on. Your VIA C7's
CPU ID is identical to mine (0x6d0), which the 6 and 7-series kernels
don't detect as such (evident by the "VIA/IDT Unknown" CPU in your
dmesg). If you want to use the padlock crypto features of the CPU you
will need to patch the initcpu.c and identcpu.c files in /sys/i386/i386
and build a new kernel. The patch below works under 6.3-RELEASE

--- /usr/src/sys/i386/i386/identcpu.c.orig      2007-09-28
04:26:16.000000000 -0400
+++ /usr/src/sys/i386/i386/identcpu.c   2008-01-23 01:30:58.000000000 -0500
@@ -563,6 +563,7 @@
                                 break;
                         goto via_common;
                 case 0x6a0:
+               case 0x6d0:
                         strcpy(cpu_model, "VIA C7 Esther");
  via_common:
                         do_cpuid(0xc0000000, regs);
--- /usr/src/sys/i386/i386/initcpu.c.orig       2008-01-23
00:13:02.000000000 -0500
+++ /usr/src/sys/i386/i386/initcpu.c    2008-01-23 00:11:59.000000000 -0500
@@ -680,6 +680,7 @@
                                         break;
                                 /* fall through. */
                         case 0x6a0:
+                       case 0x6d0:
                                 init_via();
                                 break;
                         default:



-Proto



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47B8D60A.70000>