.\" $NetBSD: boot.8,v 1.18 2014/10/27 16:18:38 wiz Exp $
.\"
.\" Copyright (c) 1992, 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. 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_sparc.8 8.2 (Berkeley) 4/19/94
.\"
.Dd November 9, 2008
.Dt BOOT 8 sparc64
.Os
.Sh NAME
.Nm boot ,
.Nm ofwboot
.Nd system bootstrapping procedures
.Sh SYNOPSIS
.Nm boot
.Op Fl adqsv
.Oo
.Ar --
.Aq Ar boot string
.Oc
.Sh DESCRIPTION
.Tn Sun
.Tn UltraSPARC
systems support booting from locally attached storage media
.Pq e.g. hard disk, Tn CD-ROM ,
and booting over
.Tn Ethernet
networks using
.Tn BOOTP .
.Ss Power fail and crash recovery
Normally, the system will reboot itself at power-up or after crashes.
An automatic consistency check of the file systems will be performed
as described in
.Xr fsck 8 ,
and unless this fails, the system will resume multi-user operations.
.Ss Cold starts
The
.Tn Sun
Open Firmware performs a Power On Self Test
.Pq Tn POST ,
and then will boot an operating system according to
configuration in Open Firmware environment variables.
.Ss Boot program options
.Bl -tag -width xxx
.It Fl a
Prompt for the root file system device, the system crash dump
device, and the path to
.Xr init 8 .
.It Fl d
Bring the system up in debug mode.
Here it waits for a kernel debugger connect; see
.Xr gdb 1 .
.It Fl q
Boot the system in quiet mode.
.It Fl s
Bring the system up in single-user mode.
.It Fl v
Boot the system in verbose mode.
.El
.Pp
Any extra flags or arguments, or the
.Aq Ar boot string
after the -- separator are passed to the boot PROM.
Other flags are currently ignored.
.Pp
At any time you can halt the running system and get back to the Open Firmware.
If the console is the
.Tn Sun
framebuffer and keyboard,
press the
.Sq STOP
and
.Sq A
keys at the same time on the keyboard.
On older models of
.Tn Sun
keyboards, the
.Sq STOP
key is labeled
.Sq L1 .
.Pp
If the console is a serial port the same is
achieved by sending a
.Sq BREAK .
.Pp
If you do this accidentally, you can continue whatever was in progress
with the
.Ic go
command.
.Sh BOOT DEVICES
Since machines vary greatly in the way their devices are connected,
there are aliases defined by the firmware.
You can either use the fully qualified
Open Firmware path of a device node, or the alias.
.Pp
The secondary boot loader,
.Nm ofwboot ,
takes
.Nm
commands virtually the same as Open Firmware.
Thus, the following examples apply equally to
.Nm ofwboot
as well as Open Firmware.
.Pp
A typical list of usable boot devices (extracted from the output of
the Open Firmware command
.Ic devalias )
is:
.Bd -literal -offset indent
net /sbus/SUNW,hme@e,8c00000
disk /sbus/SUNW,fas@e,8800000/sd@0,0
cdrom /sbus/SUNW,fas@e,8800000/sd@6,0:f
disk6 /sbus/SUNW,fas@e,8800000/sd@6,0
disk5 /sbus/SUNW,fas@e,8800000/sd@5,0
disk4 /sbus/SUNW,fas@e,8800000/sd@4,0
disk3 /sbus/SUNW,fas@e,8800000/sd@3,0
disk2 /sbus/SUNW,fas@e,8800000/sd@2,0
disk1 /sbus/SUNW,fas@e,8800000/sd@1,0
disk0 /sbus/SUNW,fas@e,8800000/sd@0,0
.Ed
.Pp
If a device specification includes a partition letter (for example
.Em cdrom
in above list), that partition is used by default, otherwise the first (a)
partition is used.
If booting from the net device, there is no partition involved.
.Pp
The boot device is an optional first part of the boot string, if no device
is specified the default device is used (see below).
.Sh FIRMWARE ENVIRONMENT VARIABLES
All Open Firmware environment variables can be printed with the
.Ic printenv
command and changed with the
.Ic setenv
command.
The boot process relevant variables and their suggested value for
booting
.Nx
are:
.Bd -literal -offset indent
boot-command boot
auto-boot? true
boot-file
boot-device disk
diag-switch? false
.Ed
.Pp
Of course you may select any other boot device,
if you do not want to boot from the device aliased to
.Em disk ,
see the discussion on devices above.
.Sh FILES
.Bl -tag -width /usr/mdec/ofwboot.netxx -compact
.It Pa /netbsd
system code
.It Pa /ofwboot
system bootstrap
.It Pa /usr/mdec/ofwboot.net
alternate bootstrap when booting from the network, see
.Xr diskless 8
for details.
.El
.Sh EXAMPLES
Boot from
.Tn CD-ROM :
.Pp
.Bd -literal -offset indent
boot cdrom
.Ed
.Pp
Note that some multi-architecture CDs are not able to use the
default sparc64 partition for
.Tn CD-ROMs
.Pq f ,
so they may require an explicit partition letter, for example
.Bd -literal -offset indent
boot cdrom:c
.Ed
.Pp
When using external
.Tn SCSI
.Tn CD-ROM
drives it is important to know two things: the
.Tn Sun
firmware expects the
.Tn SCSI
ID to be six, and the drive must support 512-byte block reads,
in addition to the standard 2048-byte reads.
.Pp
Use
.Bd -literal -offset indent
boot net -sd
.Ed
.Pp
to boot single user from network and break into the kernel debugger as
soon as possible.
.Pp
Use
.Bd -literal -offset indent
boot net tftp:netbsd -a
.Ed
.Pp
to boot a kernel named netbsd obtained via tftp and have it ask for
root file system, swap partition and init location once it is up.
.Pp
During installation from a different operating system
.Bd -literal -offset indent
boot disk:b
.Ed
.Pp
is used to boot a
.Dq miniroot
file system from the swap partition.
.Sh SEE ALSO
.Xr disklabel 8 ,
.Xr diskless 8 ,
.Xr fsck 8 ,
.Xr halt 8 ,
.Xr init 8 ,
.Xr installboot 8 ,
.Xr rc 8 ,
.Xr shutdown 8 ,
.Xr sparc/boot 8 ,
.Xr syslogd 8
.Sh STANDARDS
.Tn Sun
developed its firmware and promoted it to become
.St -ieee1275-94 .
.Pp
.Lk http://www.openfirmware.org/1275/ "IEEE 1275 Open Firmware"
.Sh BUGS
.Nx
provides no way to boot
.Tn UltraSPARC
systems from floppy disks.
This is unlikely to change, due to very low demand for this feature.
.Pp
The OBP on Ultra 1 and Ultra 2 machines can only boot from the first
4Gb of the disk.