Re: Building boot2 for ixp425

From: Sam Leffler <sam_at_freebsd.org>
Date: Fri, 15 May 2009 12:03:08 -0700
Jon Loeliger wrote:
>>> 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
>>>       
>> The boot2 loader is only for booting when the kernel is on flash (ie
>> compat flash card plugged in).
>>     
>
> There is a nanobsd built image on the compact flash card,
> which is plugged in.
>   

A bit of searching shows "Not ufs" comes from boot/common/ufsread.c and 
indicates the magic number read from the superblock didn't match 
anything known.  This points at your CF image.

>   
>> Are you sure you have flash storage plugged in
>>     
>
> Yes.
>   

boot2 would've complained differently if there was no CF plugged 
in/readable.

>   
>> with a ufs bootable filesystem on it?
>>     
>
> Maybe.  I think I successfully built that image using
> the nanobsd.sh script with the G2348 kernel via the
> tools/tools/nanobsd/gateworks/avila conf file.
>
> Is there a tool that will take nanobsd's "full disk" image,
> inspect it, and itemize what is really in it?
>   

Unfortunately no; we're lacking bi-endian UFS support so the big-endian 
image you probably made on an x86 box won't be readable.  The nanobsd 
logs files should provide everything you need to verify the 
construction.  It's possible however you transferred the data to the 
part wasn't right but my experience is that when that's broken you get 
different symptoms like the boot process just stopping w/o console output.

>
>   
>> If you get your root filesystem from some other means (nfs) then you can
>> just write the kernel itself to redboot.
>>     
>
> If possible, I specifically want to avoid the use of NFS in this
> bootstrap process.  That's why I think I am trying to use CF.
>
>   

People do this all the time so not sure why you're having so much 
trouble.  My usual process is:

1. run nanobsd.sh to construct image
2. dd if=/usr/obj/mumble/_.disk.full of=/dev/da0 bs=63b (or similar)
3. move CF part and boot

(this is for a CF part in a usb reader/writer).

    Sam
Received on Fri May 15 2009 - 17:03:11 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:47 UTC