From owner-freebsd-current@FreeBSD.ORG Fri May 15 17:57:14 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 957A41065689; Fri, 15 May 2009 17:57:14 +0000 (UTC) (envelope-from jdl@jdl.com) Received: from jdl.com (jdl.com [208.123.74.7]) by mx1.freebsd.org (Postfix) with ESMTP id 66E1C8FC1F; Fri, 15 May 2009 17:57:14 +0000 (UTC) (envelope-from jdl@jdl.com) Received: from jdl (helo=jdl.com) by jdl.com with local-esmtp (Exim 4.69) (envelope-from ) id 1M51ei-0005k4-SU; Fri, 15 May 2009 12:57:13 -0500 To: Andrew Thompson In-reply-to: <20090514145510.GA5507@citylink.fud.org.nz> References: <20090513170028.GA96051@citylink.fud.org.nz> <20090513175000.GA2635@citylink.fud.org.nz> <20090514145510.GA5507@citylink.fud.org.nz> Comments: In-reply-to Andrew Thompson message dated "Thu, 14 May 2009 07:55:10 -0700." Date: Fri, 15 May 2009 12:57:12 -0500 From: Jon Loeliger Message-Id: X-Spam-Score: -1.8 Cc: freebsd-current@freebsd.org Subject: Re: Building boot2 for ixp425 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 May 2009 17:57:15 -0000 > > Ok, rather than flogging this more just do a buildworld first, > > make TARGET_ARCH=arm TARGET_CPUTYPE=xscale \ > TARGET_BIG_ENDIAN=true buildworld > > make TARGET_ARCH=arm TARGET_CPUTYPE=xscale \ > TARGET_BIG_ENDIAN=true buildenv > > cd sys/boot/arm/ixp425/boot2/ > make OK! This is progress, thanks! So, I did the above buildworld. That's KERNCONF agnostic, right? And then I did the "buildenv/cd/make" above, and created a boot2 image finally. Cool. However, it is not UFS-kosher Onto the Avila board, stuff in flash, and "go" it: RedBoot> go FreeBSD ARM (Gateworks Avila) boot2 v0.4 Not ufs Default: /boot/kernel/kernel boot: No /boot/kernel/kernel I clearly missed something. Reviewing the Wiki steps, I see: On the build machine: Build a kernel configured to mount the file system from ad0. This is most easily done by copying the AVILA config file and stripping out the BOOTP* options. Build the second level bootstrap program by entering the arm/xscale build environment and building sys/boot2/ixdp425: make TARGET_ARCH=arm TARGET_CPUTYPE=xscale \ TARGET_BIG_ENDIAN=true buildenv cd sys/boot/arm/ixp425/boot2/ make So, after the "buildworld", above, I think I should now build a kernel. I'm not sure which KERNCONF, though. The phrase "the AVILA config file" is not specific enough for me. I think there are a couple candidates floating around: 1) /usr/src/sys/arm/conf/AVILA 2) /usr/src/tools/tools/nanobsd/gateworks/G2348 I copied the first, stripped the BOOTP* options, but didn't adjust anything to do with UFS anything, and called it BOOT2. I then built a kernel using: env TARGET_ARCH=arm make -j 3 KERNCONF=BOOT2 buildkernel I then did the 3 "buildenv/cd/make" boot2 commands above. That boot2 image was succesfully copied to the flash and run, but didn' work. Should I have used the G2348 conf file for starters? I don't think so, as there are no BOOTP* options in it to strip out. :-) Should I have added one of these to my BOOT2 conf file?: options ROOTDEVNAME=\"ufs:ad0s1\" options ROOTDEVNAME=\"ufs:ad0a\" options ROOTDEVNAME=\"ufs:ad0s1a\" Thanks, jdl