From owner-freebsd-embedded@FreeBSD.ORG Tue Sep 18 16:55:50 2007 Return-Path: Delivered-To: freebsd-embedded@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3226116A418 for ; Tue, 18 Sep 2007 16:55:50 +0000 (UTC) (envelope-from raj@semihalf.com) Received: from mail.semihalf.com (mail.semihalf.com [83.12.36.68]) by mx1.freebsd.org (Postfix) with ESMTP id 8F44E13C45E for ; Tue, 18 Sep 2007 16:55:49 +0000 (UTC) (envelope-from raj@semihalf.com) Received: from localhost (unknown [127.0.0.1]) by mail.semihalf.com (Postfix) with ESMTP id 5EB3514388; Tue, 18 Sep 2007 18:22:59 +0200 (CEST) Received: from mail.semihalf.com ([127.0.0.1]) by localhost (mail.semihalf.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 12922-06; Tue, 18 Sep 2007 18:22:56 +0200 (CEST) Message-ID: <46EFFB5E.9040407@semihalf.com> Date: Tue, 18 Sep 2007 18:22:54 +0200 From: Rafal Jaworowski MIME-Version: 1.0 To: "M. Warner Losh" References: <20070918115334.569521c1@sol.hackerzberg.local> <20070918.080043.-1625879466.imp@bsdimp.com> In-Reply-To: <20070918.080043.-1625879466.imp@bsdimp.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at semihalf.com Cc: marius.nuennerich@gmx.net, freebsd-embedded@FreeBSD.ORG Subject: Re: Porting FreeBSD to the Neo1973 (arm920t) X-BeenThere: freebsd-embedded@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Dedicated and Embedded Systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Sep 2007 16:55:50 -0000 M. Warner Losh wrote: > : > : Any idea what to do next? How to get the uart working? And how to tell > : the kernel to use it as console? > > It might also make sense to create a mkimage port. I have another > AT91RM9200 board with uboot I'd like to be able to boot from... > If you mean mkimage from U-Boot, it doesn't require to be "ported" as it already supports branding images as FreeBSD right now. The problem is that stock U-Boot would not recognize them during usual boot command. There are modifications to U-Boot required to run FreeBSD kernel directly. For FreeBSD/powerpc running with U-Boot we have loader(8) running as a second stage bootloader on top of it (as a standalone app), which loads and runs the kernel, providing it with full metadata etc. This however needs changes to U-Boot itself, and they were not merged with its mainline yet, but I can provide patches if you're intersted. For the loader(8) piece you can have a look at some preliminary approach in the e500 branch in P4 for reference: in particular it has a common library that is intended to be used also on ARM, MIPS etc., only the lowest level gluing needs equivalent asm routines. For early development however there's a quick path that one can always exercise to boot the kernel (or anything else): 1. on the host: - build FreeBSD kernel - objcopy it to kernel.bin 2. at U-Boot - tftp /tftpboot/kernel.bin - go Rafal