Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 5 May 2009 11:58:35 +0200
From:      Rick van der Zwet <info@rickvanderzwet.nl>
To:        luigi@freebsd.org
Cc:        freebsd-embedded@freebsd.org
Subject:   Boot0 testing (WAS: Re: nanobsd image boot issues)
Message-ID:  <5aaae08a0905050258t5ca6a84ep2b7d1a47bcca6d8c@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi Luigi,

Down below a thread currently running at freebsd-embedded@ regarding
the boot0 loader and it's weirdness. I don't seems to find a proper
way of getting the boot0 loader to work on various (old) hardware,
like Pentium I PC's with awardBios, which I need to get nanobsd to
work properly on various types of hardware.

 I have tried a whole number of options and combination all varies
from LBA bios settings to different boot0 loaders of various releases,
but all combination seems to 'die' or got 'stuck', e.g. not to
continue with the generic boot cycle.

Looking at the source code it seems to be 3 points of failure, ranging
from invalid input to unreadable sectors, but all ends with the same
generic warning (read: one 'beep'). I know space is limited, but how
about a different beep sequence for all warning, will that be
possible?

Next as you did quite some work in the field of boot loaders, what is
the best way to test the boot loader sequence e.g. enable full
debugging at all parts of the progress?

Thanks in advance,
/Rick
PS: Some background: Bunch of enthusiastic volunteers running FreeBSD
RELENG_5 at 80+ wireless nodes of various types of hardware, in and
around the city of Leiden, The Netherlands. Planning a overhaul of the
software to run on recent version of FreeBSD using nanobsd to provide
remote update possibilities.

2009/5/4 John Baldwin <jhb@freebsd.org>:
> On Sunday 03 May 2009 10:29:17 pm John Hein wrote:
>> Rick van der Zwet wrote at 14:20 +0200 on May =A03, 2009:
>> =A0> 2009/4/24 M. Warner Losh <imp@bsdimp.com>:
>> =A0> > In message:
> <5aaae08a0904231438v5b655056g8852dc11f1e83987@mail.gmail.com>
>> =A0> > =A0 =A0 =A0 =A0 =A0 =A0Rick van der Zwet <info@rickvanderzwet.nl>=
 writes:
>> =A0> > : Boot delay and fail issues on various hardware using nanobsd
> generated
>> =A0> > : RELENG_7_1 images on a sandisk 2gb CF (SDCFH2-002G). For exampl=
e
> while
>> =A0> > : trying to run a image on a soekris net4521 (bios 1.33) it seems=
 to
>> =A0> > : take ages (up to a minute) to start booting. Same image supplie=
d to a
>> =A0> > : PC (intel Pentium 1 & award bios) using a CF->IDE converter doe=
s not
>> =A0> > : seems to boot at all, neither does a net4801 (bios 1.33). Just =
seems
>> =A0> > : trying to find a boot loader. The net4801 even bails out after =
a
>> =A0> > : while. Output of fdisk of image list as follows:
>> =A0> [snip: fdisk outputs]
>> =A0>
>> =A0> > Have you enabled packet mode for boot in boot0 with boot0cfg?
>> =A0>
>> =A0> I did. The problems turned out to be something completely different=
.
>> =A0> Starting from soekris bios version 1.31 and upwards boot0sio does n=
ot
>> =A0> work anymore, freezing forever while trying to boot initially e.g. =
not
>> =A0> showing the following output:
>> =A0> =A0 =A0F1 =A0 FreeBSD
>> =A0> =A0 =A0F2 =A0 FreeBSD
>> =A0>
>> =A0> =A0 =A0Default: F1
>> =A0>
>> =A0> I generated my images like this:
>> =A0> =A0 =A0$ fdisk -i -f _.fdisk da0
>> =A0> =A0 =A0$ boot0cfg -B -b /boot/boot0sio -o packet -s 1 -m 3 da0
>> =A0> =A0 =A0$ bsdlabel -w -B -b /boot/boot da0s1
>> =A0> =A0 =A0$ bsdlabel -w -B -b /boot/boot da0s2
>> =A0> =A0 =A0$ newfs /dev/da0s1a
>> =A0> =A0 =A0$ newfs /dev/da0s2a
>> =A0> =A0 =A0$ newfs /dev/da0s3
>> =A0> =A0 =A0$ cat _.fdisk
>> =A0> =A0 =A0# 1000944 2 63 16 0 8192 0
>> =A0> =A0 =A0g c993 h16 s63
>> =A0> =A0 =A0p 1 165 63 495873
>> =A0> =A0 =A0p 2 165 495999 495873
>> =A0> =A0 =A0p 3 165 991872 9072
>> =A0>
>> =A0> When using /boot/boot0 instead of /boot/boot0sio all seems to work
>> =A0> perfectly fine on all Soekris boards I could test it on (net4521,
>> =A0> net4801, net5501).
>> =A0>
>> =A0> Next comes the interesting question when I use the some CF card in =
PC
>> =A0> is does _not_ work. I did get the output on the screen, but when
>> =A0> trying to press F1 or F2 or CR. All I got was a beep and no progres=
s
>> =A0> forward, but just remain in the same section. Default behavior or
>> =A0> something off?
>>
>> Note that 7.1 (which is what I seem to recall you're using)
>> changed the boot loader to use real mode (see sys/boot/i386/btx).
>>
>> You could try using boot blocks from 7.0 (or 6.3) to see
>> if it makes a difference..
>
> boot0 doesn't use BTX so those changes should not affect that. =A0Luigi (=
luigi@)
> did make some changes to boot0, however, and you may want to ask him abou=
t
> this.
>
> --
> John Baldwin
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5aaae08a0905050258t5ca6a84ep2b7d1a47bcca6d8c>