From owner-freebsd-hackers@FreeBSD.ORG Sun Jan 20 00:56:51 2008 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A6BE716A41A for ; Sun, 20 Jan 2008 00:56:51 +0000 (UTC) (envelope-from hsu@wlansystems.com) Received: from mail.bbnetworks.net (mail.bbnetworks.net [212.16.96.5]) by mx1.freebsd.org (Postfix) with ESMTP id 1687513C45B for ; Sun, 20 Jan 2008 00:56:50 +0000 (UTC) (envelope-from hsu@wlansystems.com) Received: from hsu.bbnetworks.net (hsu.bbnetworks.net [212.16.96.38]) by mail.bbnetworks.net (8.13.4/8.13.4) with ESMTP id m0K0NvVT079710; Sun, 20 Jan 2008 02:23:58 +0200 (EET) (envelope-from hsu@wlansystems.com) Message-ID: <479296CA.8000700@wlansystems.com> Date: Sun, 20 Jan 2008 02:33:14 +0200 From: Heikki Suonsivu User-Agent: Thunderbird 2.0.0.4 (X11/20070622) MIME-Version: 1.0 To: freebsd-hackers@freebsd.org Content-Type: multipart/mixed; boundary="------------070307080101080101000206" X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0.2 (mail.bbnetworks.net [212.16.96.5]); Sun, 20 Jan 2008 02:23:58 +0200 (EET) X-Mailman-Approved-At: Sun, 20 Jan 2008 04:58:42 +0000 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: FreeBSD on non-fpu device X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Jan 2008 00:56:51 -0000 This is a multi-part message in MIME format. --------------070307080101080101000206 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit There is very low cost microscopic PC (see eBOX 2300 and eBOX 2300SX www.compactpc.com.tw), which previously run FreeBSD fine, being based on Vortex86 cpu on Sis SoC chip 550. Unfortunately the manufacturer switched to a new SoC cpu which is 486SX derivative without FPU. This does not work with FreeBSD. Why anyone would be interested? The eBOX 2300SX cpu is a SoC device, which is by far the lowest power consumption I have seen, and this is probably cheapest computer on the market, still suitable for number of applications. While it is not exactly a speed daemon, it works well enough for all kinds of mp3-playing, small servers and control applications. Linux is known to work but also requires extra drivers and possibly some patches, and apparently most current distributions do not have math emulation on by default. FreeBSD 4.11 install CD does boot on this thing, and might work, but failed to detect neither the ethernet nor external USB DVD drive I was using for install, so I would not go forward on actually getting the OS to the hard disk. Now, I was wondering if FreeBSD could be actually run on these things, by compiling the kernel and world with -msoft-float CFLAGS on another computer? This might work iff: - there is no assembly code utilizing fpu instructions. - there is nothing in the world requiring some other compilers than gcc, or compilers without -msoft-float option. However, I am under assumption that all the world is compiled with gcc? It may be necessary to change calling conventions as well, that might break other other things. - Possibly -mno-fp-ret-in-387 may be needed - any experiences? Now, has anyone ever tried this? Is this hopeless? What goes wrong? Alternatively, porting MATH_EMULATE back from NetBSD etc might be an option, but might be a larger task, and apparently NetBSD math emulation did not work out of box either (seems to be a cpu detection bug, based on mailing list discussions). There are other issues with the device, drivers etc, but that is less problematic. We can donate hardware to someone who wants to have a go on getting this device running FreeBSD. Heikki Suonsivu bbnetworks.net --------------070307080101080101000206--