summaryrefslogtreecommitdiff
path: root/distrib/notes/sgi
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2012-03-29 20:27:54 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2012-03-29 20:27:54 +0000
commitad59a90e51e8f6a202fd8c12683442ba539198da (patch)
tree44fc6abbaf51d1bd4ac5eee17ae8dcf601da26c2 /distrib/notes/sgi
parentda68251c5815765c551e0447d833dc59a237da31 (diff)
Hook IP22 kernels to the build, and document how to boot the installation
media on them. Try to be helpful and explain how things may fail on the older PROM and what to do about this.
Diffstat (limited to 'distrib/notes/sgi')
-rw-r--r--distrib/notes/sgi/contents49
-rw-r--r--distrib/notes/sgi/hardware25
-rw-r--r--distrib/notes/sgi/install122
-rw-r--r--distrib/notes/sgi/prep14
-rw-r--r--distrib/notes/sgi/whatis7
5 files changed, 157 insertions, 60 deletions
diff --git a/distrib/notes/sgi/contents b/distrib/notes/sgi/contents
index ca96c39204b..ee72616c698 100644
--- a/distrib/notes/sgi/contents
+++ b/distrib/notes/sgi/contents
@@ -1,9 +1,13 @@
-dnl $OpenBSD: contents,v 1.17 2011/08/08 20:03:04 miod Exp $
+dnl $OpenBSD: contents,v 1.18 2012/03/29 20:27:53 miod Exp $
TopPart
OpenBSDdistsets
-dnl three flavours of OpenBSDbsd
+dnl four flavours of OpenBSDbsd
+ bsd.IP22 A stock GENERIC-IP22 MACHINE kernel for IP22 class
+ machines, which will be installed on such systems
+ during the install.
+
bsd.IP27 A stock GENERIC-IP27 MACHINE kernel for IP27 and IP35
class machines, which will be installed on such
systems during the install.
@@ -22,21 +26,22 @@ dnl one flavour of OpenBSDbsdmp so far...
which can be used instead of the GENERIC-IP30 kernel
after the install.
-dnl three flavours of OpenBSDrd
- bsd.rd.IP27 A compressed RAMDISK-IP27 kernel; the embedded
- filesystem contains the installation tools.
- Used for simple installation from a pre-existing
- system.
+dnl four flavours of OpenBSDrd
+ bsd.rd.IP22 A RAMDISK-IP22 kernel; the embedded filesystem
+ contains the installation tools.
+ Used for installation and upgrades.
+
+ bsd.rd.IP27 A RAMDISK-IP27 kernel; the embedded filesystem
+ contains the installation tools.
+ Used for installation and upgrades.
- bsd.rd.IP30 A compressed RAMDISK-IP30 kernel; the embedded
- filesystem contains the installation tools.
- Used for simple installation from a pre-existing
- system.
+ bsd.rd.IP30 A RAMDISK-IP30 kernel; the embedded filesystem
+ contains the installation tools.
+ Used for installation and upgrades.
- bsd.rd.IP32 A compressed RAMDISK-IP32 kernel; the embedded
- filesystem contains the installation tools.
- Used for simple installation from a pre-existing
- system.
+ bsd.rd.IP32 A RAMDISK-IP32 kernel; the embedded filesystem
+ contains the installation tools.
+ Used for installation and upgrades.
dnl can't use OpenBSDcd because of the multiple bsd.rd
cd{:--:}OSrev.iso A miniroot filesystem image suitable to be used
@@ -44,6 +49,20 @@ dnl can't use OpenBSDcd because of the multiple bsd.rd
and X sets be found via another media or network;
otherwise similar to the bsd.rd* images above.
+ boot32 A 32-bit ELF boot block for IP32 systems; will be
+ installed into the ``volume header'' of the boot
+ disk.
+
+ boot64 A 64-bit relocatable ELF boot block for IP27, IP30
+ and IP35 systems; will be installed into the
+ ``volume header'' of the boot disk.
+
+ bootecoff A 32-bit ECOFF boot block for IP22 systems, also
+ used to boot ELF kernels over the network on
+ ELF-unaware PROM; will be installed into the
+ ``volume header'' of the boot disk.
+
+
DistributionDescription(ten)
OpenBSDbase(57051101,196747310)
diff --git a/distrib/notes/sgi/hardware b/distrib/notes/sgi/hardware
index a56d1f57fd6..a1ada27171b 100644
--- a/distrib/notes/sgi/hardware
+++ b/distrib/notes/sgi/hardware
@@ -1,17 +1,27 @@
-dnl $OpenBSD: hardware,v 1.14 2010/05/09 18:42:14 miod Exp $
-OpenBSD/MACHINE OSREV runs on the following machines:
+dnl $OpenBSD: hardware,v 1.15 2012/03/29 20:27:53 miod Exp $
+OpenBSD/MACHINE OSREV runs on the following machine families:
+
+ IP22 class machines:
+ Indigo (R4x00 flavour)
+ Indigo2, Challenge M (IP22) (R4x00 flavour)
+ Indy, Challenge S (IP24)
+ (all configurations except for R4600-based are supported,
+ although the R5000SC L2 cache is not used yet)
IP27 class machines:
Origin 200
dnl Origin 2000, Onyx 2
+
IP30 class machines:
Octane
Octane 2
+
IP32 class machines:
O2
O2+
(both R50000/RM52xx/RM70000 and R10000/R12000 configurations
are supported)
+
IP35 class machines:
dnl Origin 300, Onyx 300
Origin 3000
@@ -22,6 +32,7 @@ dnl Origin 300, Onyx 300
Supported devices {:-include-:}:
- Ethernet Adapters
+ built-in IP22 Seeq 80C03 Ethernet Controller (sq)
built-in O2 Mace Ethernet Controller (mec)
IOC3 Ethernet Controller (built-in on IP27, IP30 and some IP35) (iec)
Broadcom BCM570x (a.k.a. Tigon3) based PCI adapters (bge) including:
@@ -45,11 +56,13 @@ Supported devices {:-include-:}:
Via Rhine based Ethernet (vr)
3Com EtherLink XL and Fast EtherLink XL (xl)
- SCSI Host Adapters
+ IP22 built-in WD33C93 (wdsc)
O2 built-in Adaptec AIC-7880 (ahc)
IP27/IP30/IP32/IP35 built-in QLogic ISP (isp)
LSI Logic Fusion-MPT Message Passing Interface (mpi)
53C8xx-based SCSI (siop)
- RS-232 devices
+ on-board Z8530 compatible serial ports (zstty)
on-board NS16550 compatible serial ports (com)
- Universal Serial Bus (USB) Controllers and Devices
USB Universal Host Controller (uhci)
@@ -82,6 +95,8 @@ Supported devices {:-include-:}:
If your hardware is not listed above, there is currently no support for it
in this release.
-In particular, some IP27 and IP35 systems are not supported yet (Origin 2000,
-Onyx 2, Origin 300 and Onyx 300), and multiprocessor kernels are only supported
-on IP30 (Octane) systems at the moment.
+Currently unsupported hardware {:-include-:}:
+- input devices and frame buffers on IP22
+- audio on IP22 (Iris Audio, HAL 2) and IP30 (RAD)
+- some IP27 and IP35 systems (Origin 2000, Onyx 2, Origin 300 and Onyx 300)
+- multiprocessor kernels are currently only supported on IP30 (Octane) systems
diff --git a/distrib/notes/sgi/install b/distrib/notes/sgi/install
index 4768ef7b32a..d30b42a69a1 100644
--- a/distrib/notes/sgi/install
+++ b/distrib/notes/sgi/install
@@ -1,4 +1,4 @@
-dnl $OpenBSD: install,v 1.19 2010/03/16 17:23:09 miod Exp $
+dnl $OpenBSD: install,v 1.20 2012/03/29 20:27:53 miod Exp $
OpenBSDInstallPrelude
There are several ways to install OpenBSD onto a disk. The easiest way
@@ -9,51 +9,107 @@ mini image.
Booting over the network:
dnl XXX provide more details!!!
-First, a bootp or dhcpd server needs to be set up. The bootpd(8) or
-dhcpd(8) manual page on your server should provide detailed information
-on how to set up the server.
+ First, a bootp or dhcpd server needs to be set up. The bootpd(8) or
+ dhcpd(8) manual page on your server should provide detailed information
+ on how to set up the server.
-The PROM, by default, will configure itself to use the IP address set in
-the `netaddr' environment variable. To force the PROM to always get an
-address from a bootp or dhcp server, clear the variable (`unsetenv netaddr')
-before attempting to boot from the network. Alternatively, you may want to
-make sure the value of this variable is correct.
+ The PROM, by default, will configure itself to use the IP address set in
+ the `netaddr' environment variable. To force the PROM to always get an
+ address from a bootp or dhcp server, clear the variable (`unsetenv netaddr')
+ before attempting to boot from the network. Alternatively, you may want to
+ make sure the value of this variable is correct.
-Note that, if the `netaddr' variable is unset, the PROM will initialize it
-to the address obtained from the bootp or dhcp server.
+ Note that, if the `netaddr' variable is unset, the PROM will initialize it
+ to the address obtained from the bootp or dhcp server.
-The bootp or dhcp server needs to know the ethernet address of the
-system. On O2 systems, this address can be found by using the ``printenv''
-command in the Maintenance Console, looking for the ``eaddr'' variable.
-On other systems, this address is ususally written on a factory sticker
-on the back of the machine.
+ The bootp or dhcp server needs to know the ethernet address of the system.
+ On Indigo, Indy and O2 systems, this address can be found by using the
+ ``printenv'' command in the Maintenance Console, looking for the ``eaddr''
+ variable.
+ On other systems, or if this variable is missing, this address is ususally
+ written on a factory sticker on the back of the machine.
-The server should also provide a tftp location, where the proper bsd.rd
-file should be available.
+ The server should also provide a tftp location, where the proper bsd.rd
+ file should be available.
-Once the server is set up, boot with the following command in the
-Maintenance Console:
+ IMPORTANT! Older PROM are unable to connect to a tftp server
+ on a port number greater than 32767; if booting stalls almost
+ immediately, it might be necessary to restrict the tftp server
+ to only use 15-bit port numbers.
-> bootp()/bsd.rd.IP32
+ This situation can be detected by running tcpdump on the tftp
+ server, and looking for icmp `port unreachable' errors from the
+ MACHINE system.
-(replacing `IP32' by the family name suitable for your machine).
+ The following PROM versions are known to exhibit this behaviour:
+ - on Indigo:
+ >> version
+ PROM Monitor SGI Version 4.0.5G Rev B IP20, Nov 10, 1992 (BE)
+ - on Indy:
+ >> version
+ PROM Monitor SGI Version 5.1 Rev B3 IP24 Sep 17, 1993 (BE)
+
+ Note that this list does not pretend to be complete, and other,
+ more recent, PROM versions might be affected as well.
+
+ If the server system runs OpenBSD, the following command can be
+ used to enforce a safe port number:
+
+ # sysctl net.inet.ip.portlast=32767
+
+ don't forget to restore the previous value of this sysctl after
+ the troublesome system has booted.
+
+ Once the server is set up, boot with the following command in the
+ Maintenance Console:
+
+ >> bootp()/bsd.rd.IP32
+
+ (replacing `IP32' by the family name suitable for your machine).
+
+ If the PROM complains about the file format, such as:
+
+ >> bootp()bsd.rd.IP22
+ [...]
+ Cannot load bootp()bsd.rd.IP22.
+ Problem reading elf structure at offset -2004877312.
+ Unable to execute bootp()bsd.rd.IP22
+
+ ... then this means that the PROM is too old to know about the ELF file
+ format the OpenBSD kernel is provided in. In this case, the kernel needs
+ to be booted from the ``bootecoff'' boot block, which has to be put on the
+ tftp server as well, with:
+
+ >> bootp()/bootecoff bootp()/bsd.rd.IP22
+
+ If the boot aborts early with a memory related error message, such as:
+
+ >> bootp()/bootecoff bootp()/bsd.rd.IP22
+ [...]
+ Cannot load bootp()/bootecoff.
+ Text start 0x80020f0, size 0xa030 doesn't fit in a FreeMemory area.
+ Unable to execute bootp()/bootecoff
+
+ ... then it is necessary to clean up after an earlier unsuccessful (or
+ aborted) boot attempt. Just leave the PROM interactive mode with `exit',
+ and at the maintenance menu, choose `Enter Command Monitor' again.
Booting from CD-ROM installation media:
-(Note: this boot method only works on IP32 systems at the moment).
+NOTE: this boot method is only known to work on IP32 systems at the moment.
-From the System Maintenance Menu, select '2' (or click on the
-appropriate icon if in graphics console) to Install System Software.
+ From the System Maintenance Menu, select '2' (or click on the
+ appropriate icon if in graphics console) to Install System Software.
-If necessary, select the proper CD-ROM drive, and press enter to
-confirm your choice. Insert the installation CD-ROM (if you did not
-do so already) and press enter to boot the system.
+ If necessary, select the proper CD-ROM drive, and press enter to
+ confirm your choice. Insert the installation CD-ROM (if you did not
+ do so already) and press enter to boot the system.
-If the boot is successful, you will get a loader version message,
-executable sizes, and then the kernel copyright and device probe
-messages. Boot failure modes are typically a lot of CD-ROM drive
-activity, but no messages or complaints about magic numbers,
-checksums or formats.
+ If the boot is successful, you will get a loader version message,
+ executable sizes, and then the kernel copyright and device probe
+ messages. Boot failure modes are typically a lot of CD-ROM drive
+ activity, but no messages or complaints about magic numbers,
+ checksums or formats.
Installing the system:
diff --git a/distrib/notes/sgi/prep b/distrib/notes/sgi/prep
index 7cc3b080b04..8e23c642b04 100644
--- a/distrib/notes/sgi/prep
+++ b/distrib/notes/sgi/prep
@@ -1,4 +1,4 @@
-dnl $OpenBSD: prep,v 1.20 2010/04/17 11:15:29 miod Exp $
+dnl $OpenBSD: prep,v 1.21 2012/03/29 20:27:53 miod Exp $
Before you install your system, you should identify your system family and
familiarize yourself with the ARCBios setup and how to run programs from
the Command monitor prompt.
@@ -8,7 +8,12 @@ Identifying your system:
Due to significant design differences in SGI systems, OpenBSD
needs to use different kernels, depending on the system family.
- There are currently four system families supported by OpenBSD:
+ There are currently five system families supported by OpenBSD:
+
+ IP22 family:
+ Indigo (R4x00 flavour)
+ Indigo 2, Challenge M (R4x00 flavour)
+ Indy, Challenge S
IP27 family:
Origin 200, Onyx 2
@@ -78,6 +83,7 @@ Switching from serial to graphics console and vice versa:
- VPro family frame buffers on IP27, IP30 and IP35 systems (odyssey)
And the following graphics devices are not supported yet:
+ - all IP22 frame buffers
- Infinite Reality (Kona) frame buffer on IP27/IP35 Onyx systems
- Voyager (Ultimate Vision) frame buffer on IP35 Onyx 4 systems
@@ -120,8 +126,8 @@ Setting the environment:
shell and loader. Set it to ``boot'', the OpenBSD boot loader.
The kernel image loaded by default is specified in the ``OSLoadFilename''
- variable, which defaults to ``/unix''. To boot OpenBSD, set it to
- ``/bsd''.
+ variable, which defaults to ``unix''. To boot OpenBSD, set it to
+ ``bsd''.
To enable automatic booting of OpenBSD once the machine has passed its
diagnostic tests, change the value of ``AutoLoad'' to ``Yes''.
diff --git a/distrib/notes/sgi/whatis b/distrib/notes/sgi/whatis
index 5ae9f4301fa..5e63cd1cd4f 100644
--- a/distrib/notes/sgi/whatis
+++ b/distrib/notes/sgi/whatis
@@ -1,4 +1,5 @@
-dnl $OpenBSD: whatis,v 1.4 2009/05/30 05:00:37 miod Exp $
+dnl $OpenBSD: whatis,v 1.5 2012/03/29 20:27:53 miod Exp $
-OpenBSD/MACHINE runs on several SGI workstations and servers, including
-the O2, Octane, Origin/Onyx and Fuel/Tezro families.
+OpenBSD/MACHINE runs on several SGI workstations and servers built upon
+64-bit MIPS processors (R4000 and up), including the Indigo, Indigo 2,
+Indy, O2, Octane, Origin/Onyx and Fuel/Tezro families.