Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 May 2009 12:57:12 -0500
From:      Jon Loeliger <jdl@jdl.com>
To:        Andrew Thompson <thompsa@FreeBSD.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Building boot2 for ixp425 
Message-ID:  <E1M51ei-0005k4-SU@jdl.com>
In-Reply-To: <20090514145510.GA5507@citylink.fud.org.nz> 
References:  <E1M4HeH-0006SL-2C@jdl.com> <20090513170028.GA96051@citylink.fud.org.nz> <E1M4HtL-0006Y9-Nw@jdl.com> <20090513175000.GA2635@citylink.fud.org.nz> <E1M4MWa-0007qE-6m@jdl.com> <20090514145510.GA5507@citylink.fud.org.nz>

next in thread | previous in thread | raw e-mail | index | archive | help
> 
> 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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1M51ei-0005k4-SU>