Subject: boot tape (was: Is Sun4 (VMEbus) support any better)
To: None <port-sparc@netbsd.org>
From: Gordon W. Ross <gwr@netbsd.org>
List: port-sparc
Date: 03/09/1999 00:21:39
Sun boot tapes work like this:
The first segment has to be a boot program. The PROM will
load it at a fixed location and jump to its beginning.
Anything after that is up to the boot program.
The "tapeboot" program I wrote for the Sun3 allows the
specification of a "segment number" as the kernel name,
and will attempt to load a kernel from that segment.
(I used that to allow separate Sun3/Sun3X kernels.)
The segment number is one by default (the segment
immediately following the boot program on tape).
The kernel used on a boot tape should be one of those
RAMDISK configurations that can run fully standalone
(no actual root or swap device used). On the Sun3 I
put together an incredibly small (256K!) RAMDISK that
provides the minimum needed to partition a disk and
copy the miniroot from its tape segment into swap.
Porting tapeboot to the sparc:
The tapeboot program should build as-is on the sparc.
(Both Sun3 and SPARC boot code had common roots...)
Then all you need is a RAMDISK kernel of some sort.
Whatever was used on the boot floppy should be OK.
Feel free to send me questions if you like.
Gordon
Curt Sampson writes:
> On Tue, 9 Mar 1999, Harald Barth wrote:
>
> > # segment 0: tapeboot
> > # segment 1: netbsd.sun3 (RAMDISK3)
> > # segment 2: netbsd.sun3x (RAMDISK3X)
> > # segment 3: miniroot image
>
> Right. We obviously need only one image, as all Sparc systems can
> use the same kernel. (The 3 and 3x used different kernels in 1.3.)
>
> > I have not found any evidence how to build the tapeboot.
>
> For the Sun 3, it's in src/sys/arch/sun3/stand/tapeboot. We don't
> have a tapeboot for sparc at the moment, and getting this put
> together is probably the hardest part, though I don't think it
> should be that hard. I'd copy the sun3 stuff and work from there,
> and ask Sparc experts here if you get into trouble. :-)
>
> > What is a good kernel config for this? Enable SUN4 in
> > /usr/src/sys/arch/sparc/conf/INSTALL.
>
> Yeah, I'd suggest that. Leave the others enabled, too, though;
> might as well make the boot tape work on as many systems as possible.
>
> cjs
> --
> Curt Sampson <cjs@cynic.net> 604 801 5335 De gustibus, aut bene aut nihil.
> The most widely ported operating system in the world: http://www.netbsd.org
>