diff options
-rw-r--r-- | sys/arch/macppc/stand/boot.8 | 282 | ||||
-rw-r--r-- | sys/arch/macppc/stand/boot.mac/Makefile | 5 |
2 files changed, 285 insertions, 2 deletions
diff --git a/sys/arch/macppc/stand/boot.8 b/sys/arch/macppc/stand/boot.8 new file mode 100644 index 00000000000..24e087ebb53 --- /dev/null +++ b/sys/arch/macppc/stand/boot.8 @@ -0,0 +1,282 @@ +.\" $OpenBSD: boot.8,v 1.1 2013/10/14 11:51:08 mpi Exp $ +.\" +.\" Copyright (c) 1997-2001 Michael Shalayeff +.\" 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. +.\" +.\" 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 OR HIS RELATIVES 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 MIND, 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. +.\" +.\" +.Dd $Mdocdate: October 14 2013 $ +.Dt BOOT 8 macppc +.Os +.Sh NAME +.Nm boot , +.Nm boot.conf +.Nd macppc-specific bootstrap +.Sh DESCRIPTION +The main purpose of this program is to load the system kernel. +.Pp +As described in +.Xr boot_macppc 8 , +this program is loaded by the +firmware +and provides a convenient way to load the kernel. +This program acts as an enhanced boot monitor for macppc systems, providing +a common interface for the kernel to start from. +.Pp +Basic operations include: +.Pp +.Bl -bullet -compact +.It +Loading kernels from hard disk. +.It +Loading kernels compressed by +.Xr gzip 1 . +.It +Providing an interactive command line. +.El +.Pp +The sequence of its operation is as follows: initialization, +parsing the configuration file, then an interactive command line. +While at the command line you have 5 seconds to type any commands, if needed. +If time expires, the kernel will be loaded according to +the current variable settings (see the +.Nm set +command). +Each time a kernel load fails, the timeout is increased by one second. +The sequence of +.Nm +operations is as follows: +.Bl -enum +.It +If the file +.Pa /etc/boot.conf +.\" XXX BEWARE! wd0 only, so text change... +.\" exists on the filesystem +.\" .Nm +.\" was loaded from, open and parse it. +exists on the filesystem in slice +.Sq a +on the first disk drive +.Pq wd0 , +open and parse it. +This file may contain any commands +.Nm +accepts at the interactive prompt. +Though default settings usually suffice, they can be changed here. +.\" XXX CHECK_SKIP_CONF is not defined... +.\" .Pp +.\" .Pa boot.conf +.\" processing can be skipped by holding down either Control key as +.\" .Nm +.\" starts. +.It +The header line +.Pp +.Dl >> OpenBSD/macppc BOOT [x.xx] +.Pp +is displayed to the active console, where +.Ar x.xx +is the version number of the +.Nm +program, followed by the +.Pp +.Dl boot> +.Pp +prompt, which means you are in interactive mode and may enter commands. +If you do not, +.Nm +will proceed to load the kernel with the current parameters after the +timeout period has expired. +.El +.Pp +By default, +.Nm +attempts to load the kernel executable +.Pa /bsd . +If it fails to find the kernel and no alternative kernel image has +been specified, the system will be unable to boot. +.Sh COMMANDS +The following commands are accepted at the +.Nm +prompt: +.Bl -tag -width shorten +.It boot Op Ar image Op Fl acds +Boots the kernel image specified by +.Ar image +with any options given. +Image specification consists of a pair +.Ar device : Ns Ar filename ; +either or both can be omitted (`:' is not needed if both are omitted), +in which case values from +.Nm +variables will be used. +.Pp +The only bootable devices, at the moment, are IDE devices connected to +the internal controller; +they are detected as +.Sq wd +devices. +Therefore, to boot kernel +.Pa /bsd +from slice +.Sq a +on the first hard drive, +specify +.Dq boot wd0a:/bsd . +.Bl -tag -width _a_ +.It Fl a +Causes the kernel to ask for the +.Nm root +device to use. +.It Fl c +Causes the kernel to go into +.Xr boot_config 8 +before performing +.Xr autoconf 4 +procedures. +.It Fl d +Causes the kernel to drop into +.Xr ddb 4 +at the earliest convenient point. +.It Fl s +Causes the kernel to boot single-user. +.El +.It echo Op Ar args +Displays +.Ar args +on the console device. +.It help +Prints a list of available commands. +.It ls Op Ar directory +Prints contents of the specified +.Ar directory +in long format including: attributes and file type, owner, group, +size, filename. +.It reboot +Reboots the machine by initiating a warm boot procedure. +.It set Op Ar varname Op Ar value +If invoked without arguments, prints a list of variables and their values. +If only +.Ar varname +is specified, displays contents of that variable. +If +.Ar varname +and +.Ar value +are both specified, sets that variable to the given value. +Variables include: +.Pp +.Bl -tag -compact -width boothow +.It Nm addr +Address at which to load the kernel. +.It Nm debug +Debug flag if +.Nm +was compiled with DEBUG defined. +.It Nm device +Boot device name (e.g., +.Li wd0a , +.Li wd1a ) . +.It Nm howto +Options to pass to the loaded kernel. +.It Nm image +File name containing the kernel image. +.It Nm timeout +Number of seconds boot will wait for human intervention before +booting the default kernel image. +.\" .It Nm tty +.\" Active console device name (e.g., +.\" .Li com0 ) . +.\" Currently, only the first serial port +.\" .Pq Li com0 +.\" is supported for console on macppc. +.El +.\" XXX ignored, so don't document it. +.\" .It stty Op Ar device Op Ar speed +.\" Displays or sets the +.\" .Ar speed +.\" for a console +.\" .Ar device . +.\" If changing the baudrate for the currently active console, +.\" .Nm +.\" offers you five seconds of grace time before committing the change +.\" to allow you to change your terminal's speed to match. +.\" If changing speed +.\" .Em not +.\" for the active console, the baudrate is set for the +.\" .Em next +.\" time you switch to a serial console. +.\" .Pp +.\" The default baudrate is 9600bps. +.It time +Displays system time and date. +.El +.Sh FILES +.Bl -tag -width /etc/boot.conf -compact +.It Pa /usr/mdec/boot +system bootstrap +.It Pa /etc/boot.conf +system bootstrap's startup file +.It Pa /bsd +kernel image +.It Pa /bsd.rd +kernel image for installation/recovery +.El +.Sh EXAMPLES +Boot the default kernel: +.Pp +.Dl boot> boot +.Pp +Remove the 5 second pause at boot-time permanently, causing +.Nm +to load the kernel immediately without prompting: +.Pp +.Dl # echo \&"boot\&" > /etc/boot.conf +.Pp +Boot the kernel named +.Pa /bsd +from the second hard disk in +.Dq User Kernel Configuration +mode (see +.Xr boot_config 8 ) . +This mechanism allows for the explicit enabling and disabling of devices +during the current boot sequence, as well as the modification +of device parameters. +Once booted, such changes can be made permanent by using +.Xr config 8 Ns 's +.Fl e +option. +.Pp +.Dl boot> boot wd1a:/bsd -c +.Sh SEE ALSO +.Xr gzip 1 , +.Xr autoconf 4 , +.Xr ddb 4 , +.Xr boot_config 8 , +.Xr boot_macppc 8 , +.Xr fdisk 8 , +.Xr reboot 8 +.Sh HISTORY +This program was written by Michael Shalayeff for +.Ox 2.1 +on the i386 platform, and was later ported to the macppc platform. diff --git a/sys/arch/macppc/stand/boot.mac/Makefile b/sys/arch/macppc/stand/boot.mac/Makefile index 9fdf32c928b..b60f64b008e 100644 --- a/sys/arch/macppc/stand/boot.mac/Makefile +++ b/sys/arch/macppc/stand/boot.mac/Makefile @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile,v 1.7 2012/09/02 23:07:26 deraadt Exp $ +# $OpenBSD: Makefile,v 1.8 2013/10/14 11:51:09 mpi Exp $ # $NetBSD: Makefile,v 1.1 1996/09/30 16:35:05 ws Exp $ S= ${.CURDIR}/../../../.. @@ -10,7 +10,8 @@ PROG= boot.mac SRCS= Locore.c main.c ofdev.c net.c netif_of.c alloc.c cache.c hfs.c SRCS+= boot.c conf.c cmd.c vars.c ctime.c strtol.c -NOMAN= +MAN?= boot.8 +MLINKS?= boot.8 boot.conf.5 INSTALL_STRIP= BINDIR= /usr/mdec OBJCOPY?= objcopy |