diff options
author | Steve Murphree <smurph@cvs.openbsd.org> | 2001-06-26 21:58:11 +0000 |
---|---|---|
committer | Steve Murphree <smurph@cvs.openbsd.org> | 2001-06-26 21:58:11 +0000 |
commit | 416f561c78b0eca90fdb484e72a96080b0825dca (patch) | |
tree | d310db0254b85229b90b9d90e79cabfbbcb6101a /sys/arch/mvmeppc/stand/tftpboot | |
parent | 77682e0d8d22531ed2952aaab30aae7c69483b3d (diff) |
Initial import of mvmeppc.
Diffstat (limited to 'sys/arch/mvmeppc/stand/tftpboot')
-rw-r--r-- | sys/arch/mvmeppc/stand/tftpboot/Makefile | 45 | ||||
-rw-r--r-- | sys/arch/mvmeppc/stand/tftpboot/boot.c | 120 | ||||
-rw-r--r-- | sys/arch/mvmeppc/stand/tftpboot/version.c | 8 |
3 files changed, 173 insertions, 0 deletions
diff --git a/sys/arch/mvmeppc/stand/tftpboot/Makefile b/sys/arch/mvmeppc/stand/tftpboot/Makefile new file mode 100644 index 00000000000..7c248c806bf --- /dev/null +++ b/sys/arch/mvmeppc/stand/tftpboot/Makefile @@ -0,0 +1,45 @@ +# $OpenBSD: Makefile,v 1.1 2001/06/26 21:58:09 smurph Exp $ + +SIZE?= size +STRIP?= strip + +S= ${.CURDIR}/../../../.. +DEFS= -DSUN_BOOTPARAMS +#-DNETIF_DEBUG +INCPATH=-I${.CURDIR} -I${.CURDIR}/../libsa -I${.CURDIR}/../libbug \ + -I${S} -I${S}/lib/libsa +CFLAGS=-O2 ${DEFS} ${INCPATH} ${COPTS} +CLEANFILES+=tftpboot tftpboot.bin + +.include "${S}/arch/mvmeppc/stand/bugcrt/Makefile.inc" +.include "${S}/arch/mvmeppc/stand/libbug/Makefile.inc" +.include "${S}/arch/mvmeppc/stand/libsa/Makefile.inc" +.include "${S}/arch/mvmeppc/stand/libz/Makefile.inc" + +SRCS= boot.c version.c +#SRCS+= if_ie.c +#SRCS+= if_le.c +OBJS= ${SRCS:S/.c/.o/g} +LIBS= ${LIBSA} ${LIBBUG} ${LIBZ} ${LIBGCC} +LDFLAGS+= -s -X -N -Ttext ${STAGE1_RELOC} -e _start +#LDFLAGS+= -nostdlib -s -N -Ttext ${RELOC} + +all: tftpboot.bin + +tftpboot: ${OBJS} ${SINGLE} ${LIBS} + ${LD} ${LDFLAGS} \ + ${SINGLE} ${OBJS} ${LIBS} -o $@ +# @${SIZE} $@ + +tftpboot.bin: tftpboot + ${STRIP} tftpboot + dd ibs=96 skip=1 if=tftpboot of=$@ +# dd ibs=38 skip=1 if=tftpboot of=$@ + chown ${LIBOWN}.${LIBGRP} tftpboot.bin + chmod ${LIBMODE} tftpboot.bin + +install: + ${INSTALL} ${INSTALL_COPY} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + tftpboot.bin ${DESTDIR}${MDEC_DIR}/tftpboot + +.include <bsd.prog.mk> diff --git a/sys/arch/mvmeppc/stand/tftpboot/boot.c b/sys/arch/mvmeppc/stand/tftpboot/boot.c new file mode 100644 index 00000000000..004be9af878 --- /dev/null +++ b/sys/arch/mvmeppc/stand/tftpboot/boot.c @@ -0,0 +1,120 @@ +/* $OpenBSD: boot.c,v 1.1 2001/06/26 21:58:10 smurph Exp $ */ +/*- + * Copyright (c) 1995 Theo de Raadt + * Copyright (c) 2001 Steve Murphree, Jr. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by Theo de Raadt + * 4. The name of the Author may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * Copyright (c) 1982, 1986, 1990, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)boot.c 8.1 (Berkeley) 6/10/93 + */ + +#include <sys/param.h> +#include <sys/reboot.h> +#include <machine/prom.h> + +#include "stand.h" +#include "libsa.h" + + +/* + * Boot device is derived from ROM provided information. + */ +#define LOADADDR 0x10000 + +extern char *version; +char line[80]; + +main() +{ + char *cp, *file; + int ask = 0, howto, ret; + + /* cycle in the correct args */ + bugargs.arg_start = bugargs.nbarg_start; + bugargs.arg_end = bugargs.nbarg_end; + *bugargs.arg_end = 0; /* ensure */ + + bootdev_type = BUGDEV_NET; + + printf("\n>> OpenBSD/mvmeppc netboot [%s]\n", version); + + ret = parse_args(&file, &howto); + + for (;;) { + if (ask) { + printf("boot: "); + gets(line); + if (line[0]) { + bugargs.arg_start = line; + cp = line; + while (cp < (line + sizeof(line) - 1) && *cp) + cp++; + bugargs.arg_end = cp; + ret =parse_args(&file, &howto); + } + } + if (ret) { + printf("boot: -q returning to MVME-Bug\n"); + break; + } + exec_mvme(file, howto); + printf("boot: %s: %s\n", file, strerror(errno)); + ask = 1; + } +} diff --git a/sys/arch/mvmeppc/stand/tftpboot/version.c b/sys/arch/mvmeppc/stand/tftpboot/version.c new file mode 100644 index 00000000000..6d76885e63d --- /dev/null +++ b/sys/arch/mvmeppc/stand/tftpboot/version.c @@ -0,0 +1,8 @@ +/* $OpenBSD: version.c,v 1.1 2001/06/26 21:58:10 smurph Exp $ */ + +/* + * make a random change to this file when you want the bootblock + * revision to increase. like change this q to an x, or something. + */ + +char *version = "$Revision: 1.1 $"; |