1 .\" $NetBSD: boot.8,v 1.5 2007/08/12 03:15:18 wiz Exp $
3 .\" Copyright (c) 2006 Stephen M. Rumble
4 .\" All rights reserved.
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\" notice, this list of conditions and the following disclaimer.
11 .\" 2. The name of the author may not be used to endorse or promote products
12 .\" derived from this software without specific prior written permission.
14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
15 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
16 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
17 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
18 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
19 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 .Nd sgimips system bootstrapping procedures
33 MIPS-based computers all feature essentially similar firmware systems.
34 However, as of the Indigo R4x00 series (IP20), quasi-
36 (Advanced RISC Computing Specification) compatible features are also present.
37 All known PROM implementations support loading executables from disk
38 devices, as well as from the network via BOOTP and TFTP.
41 provides a small filesystem at the beginning of each bootable disk called
42 a Volume Header, which contains a boot loader and other standalone utilities.
45 requires that we write our bootloader into to the volume header using
48 Once a bootloader is present in the volume header, it may be executed
49 directly by the PROM either manually, or at boot time using the
51 PROM environment variable.
54 bootloader will obtain the kernel filename to boot from the PROM or EEPROM.
55 This is specified by setting the PROM environment variable
57 to an appropriate value.
61 For example, the following will configure the PROM to use the bootloader
66 .Dl Ic setenv OSLoader aoutboot
67 .Dl Ic setenv OSLoadFilename netbsd.old
69 The system firmware will obtain an IP address, TFTP server address, and an
70 optional filename from the BOOTP server and download it via TFTP.
71 The PROM's configurable network address environment variable
73 must match the address provided by the BOOTP server.
75 An example BOOTP entry for
79 .Bd -unfilled -offset indent
81 hardware ethernet 08:00:69:42:42:42;
82 fixed-address 192.168.0.2;
83 option host-name "indigo3k.foo";
84 #filename "/netbsd.ecoff";
85 next-server 192.168.0.1;
86 option root-path "/export/indigo3k/root";
87 server-name "192.168.0.1";
91 To boot a kernel named
94 .Dl Ic boot -f bootp():/netbsd.ecoff
98 for more information on configuring
106 Some older PROM revisions do not support loading of ELF images.
107 The build system automatically prepares ECOFF versions, which are
108 correctly interpreted.
111 does not support booting from disk on systems lacking an ARCS-compatible
112 firmware (presently supported systems include Personal Iris and Indigo R3000).
113 It is possible to work around this by creating a sufficiently large volume
114 header and placing the kernel in it, or by network booting.
116 Some firmware revisions have a bug, which precludes them from communicating
117 with TFTP servers using ports above 32767.
120 as the TFTP server, this problem may be worked around as follows:
122 .Dl Ic sysctl -w net.inet.ip.anonportmin=20000
123 .Dl Ic sysctl -w net.inet.ip.anonportmax=32767
125 Another bug exists in some firmware revisions, which precludes the PROM from
126 communicating with TFTP servers that employ PMTU (Path MTU) discovery.
127 This bug may be worked around by disabling PMTU on the TFTP server.
128 This does not presently affect
132 This man page is horribly incomplete.