Subject: CVS commit: syssrc
To: None <source-changes@netbsd.org>
From: Wayne Knowles <wdk@netbsd.org>
List: source-changes
Date: 09/18/2000 14:40:49
Module Name:	syssrc
Committed By:	wdk
Date:		Mon Sep 18 11:40:48 UTC 2000

Added Files:
	syssrc/sys/arch/mipsco/stand: Makefile Makefile.booters Makefile.inc
	syssrc/sys/arch/mipsco/stand/boot: Makefile version
	syssrc/sys/arch/mipsco/stand/bootxx_cd9660: Makefile
	syssrc/sys/arch/mipsco/stand/bootxx_ffs: Makefile
	syssrc/sys/arch/mipsco/stand/common: boot.c bootinfo.c bootinfo.h
	    bootxx.c callvec.c checksize.sh common.h conf.c devopen.c prom.S
	    saio.c saio.h start.S

Log Message:
Initial commit of a 2 stage bootloader for NetBSD/mipsco.   Based on pmax
and alpha ports.

Uses PROM standalone I/O functions but due to the lack of a lseek function
it currently only works with version 5.40 of the firmware.  A more portable
solution is being worked on.

installboot utility requires several changes in order to correctly install
the bootstrap code - there is a "volume directory" which contains a list
of filenames, start sectors and length.  We need to add a "boot" entry of
the correct length starting at block 2.  The boot file has to be ecoff
which means we waste another 0.5k

Normally the Mips filesystem has a ~500k partition for this purpose but it
should be possible to squeeze it all into the first 7k "BSD Style" (1k is
required for 2 different copies of the partition table)

Only the bootxx_ffs first stage bootstrap has been tested via bootp() which
loads the second stage off disk and then boots the kernel.


To generate a diff of this commit:
cvs rdiff -r0 -r1.1 syssrc/sys/arch/mipsco/stand/Makefile \
    syssrc/sys/arch/mipsco/stand/Makefile.booters \
    syssrc/sys/arch/mipsco/stand/Makefile.inc
cvs rdiff -r0 -r1.1 syssrc/sys/arch/mipsco/stand/boot/Makefile \
    syssrc/sys/arch/mipsco/stand/boot/version
cvs rdiff -r0 -r1.1 syssrc/sys/arch/mipsco/stand/bootxx_cd9660/Makefile
cvs rdiff -r0 -r1.1 syssrc/sys/arch/mipsco/stand/bootxx_ffs/Makefile
cvs rdiff -r0 -r1.1 syssrc/sys/arch/mipsco/stand/common/boot.c \
    syssrc/sys/arch/mipsco/stand/common/bootinfo.c \
    syssrc/sys/arch/mipsco/stand/common/bootinfo.h \
    syssrc/sys/arch/mipsco/stand/common/bootxx.c \
    syssrc/sys/arch/mipsco/stand/common/callvec.c \
    syssrc/sys/arch/mipsco/stand/common/checksize.sh \
    syssrc/sys/arch/mipsco/stand/common/common.h \
    syssrc/sys/arch/mipsco/stand/common/conf.c \
    syssrc/sys/arch/mipsco/stand/common/devopen.c \
    syssrc/sys/arch/mipsco/stand/common/prom.S \
    syssrc/sys/arch/mipsco/stand/common/saio.c \
    syssrc/sys/arch/mipsco/stand/common/saio.h \
    syssrc/sys/arch/mipsco/stand/common/start.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.