version 1.73, 2002/12/19 03:10:00 |
version 1.74, 2002/12/31 16:15:26 |
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" |
|
"http://www.w3.org/TR/html4/loose.dtd"> |
<html> |
<html> |
<head> |
<head> |
<title>OpenBSD/hppa</title> |
<title>OpenBSD/hppa</title> |
<link rev=made href="mailto:www@openbsd.org"> |
<link rev="made" href="mailto:www@openbsd.org"> |
<meta name="resource-type" content="document"> |
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
<meta name="resource-type" content="document"> |
<meta name="description" content="the OpenBSD/hppa page"> |
<meta name="description" content="the OpenBSD/hppa page"> |
<meta name="keywords" content="openbsd,hppa"> |
<meta name="keywords" content="openbsd,hppa"> |
<meta name="distribution" content="global"> |
<meta name="distribution" content="global"> |
<meta name="copyright" content="This document copyright 1996-2002 by OpenBSD."> |
<meta name="copyright" content="This document copyright 1996-2002 by OpenBSD."> |
</head> |
</head> |
|
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#23238E"> |
<body bgcolor="#ffffff" text="#000000" link="#23238e"> |
<a href="index.html"><img alt="[OpenBSD]" height="30" width="141" src="images/smalltitle.gif" border="0"></a> |
<a href="index.html"><img alt="[OpenBSD]" height="30" width="141" src="images/smalltitle.gif" border="0"></a> |
|
<p> |
|
<h2><font color="#e00000">OpenBSD/hppa</font></h2> |
|
|
<h2><font color="#e00000">hppa</font></h2> |
|
<hr> |
<hr> |
|
|
<h3><font color="#0000e0"><strong>Status and History:</strong></font></h3> |
|
Systems boot to multi-user and full snapshots are made periodically. |
|
There are several projects being under development to support |
|
SCSI controllers and input devices, |
|
to solve certain stability issues. |
|
<p> |
<p> |
|
OpenBSD/hppa runs on a large set of the 32-bit Hewlett Packard Precision |
|
Architecture workstations and servers (HP PA-RISC). |
|
</p> |
|
|
|
<p> |
|
A mailing list dedicated to the OpenBSD/hppa port is available at |
|
<u><font color="#23238e">hppa@openbsd.org</font></u>. |
|
To join the OpenBSD/hppa mailing list, send a message body of <b>"subscribe |
|
hppa"</b> to <a href="mailto:majordomo@openbsd.org">majordomo@openbsd.org</a>. |
|
Please be sure to check our <a href="mail.html">mailing list policy</a> before |
|
subscribing. |
|
</p> |
|
|
|
<p> |
|
The current port maintainer is |
|
<a href="mailto:mickey@openbsd.org">Michael Shalayeff</a>. |
|
Others are definitely welcome to contribute! |
|
</p> |
|
|
|
<a href="#toc"></a> |
|
<h3><font color="#0000e0"><i>Table of contents</i></font></h3> |
|
<p> |
|
<ul> |
|
<li><a href="#history">Past history of the port</a> |
|
<li><a href="#status">Current status</a> |
|
<li><a href="#projects">Project list</a> |
|
<li><a href="#hardware">Supported hardware list</a> |
|
<li><a href="#hwdocs">Hardware documentation</a> |
|
<li><a href="#install">Getting and installing OpenBSD/hppa</a> |
|
<li><a href="#netboot">Netbooting OpenBSD/hppa</a> |
|
<li><a href="#cross">Cross-compiling kernels</a> |
|
</ul> |
|
</p> |
|
|
|
<hr> |
|
<a name="history"></a> |
|
<h3><font color="#0000e0"><strong>History:</strong></font></h3> |
|
|
|
<p> |
This project was started in those days when the only |
This project was started in those days when the only |
open source operating systems for HP PA-RISC computers were |
open source operating systems for HP PA-RISC computers were |
<a href="http://www.cs.utah.edu/projects/flux/lites/html">Lites</a> and |
<a href="http://www.cs.utah.edu/projects/flux/lites/html">Lites</a> and |
|
|
is encumbered by HP proprietary code and USL licensing and is |
is encumbered by HP proprietary code and USL licensing and is |
not publicly available. |
not publicly available. |
One of the major direct benefits from previous porting efforts |
One of the major direct benefits from previous porting efforts |
(besides the code, of course ;) is |
(besides the code, of course) was support for HP PA-RISC in GCC and |
support for HP PA-RISC in GCC and binutils, which allowed quick |
binutils, which allowed quick building of a cross-tools environment |
building of a cross-tools environment for development. |
for development. |
|
</p> |
|
|
<p> |
<p> |
Later on HP decided to sponsor a |
Later on, Hewlett-Packard decided to sponsor a |
<a href="http://www.parisc-linux.org/">Linux</a> port to PA-RISC |
<a href="http://www.parisc-linux.org/">Linux</a> port to the PA-RISC |
machines which actually resulted in some proprietary documentation |
family, which actually resulted in some proprietary documentation |
release, even though they target a different class of 9000 machines. |
being released, even though their target was a different class of 9000 |
|
machines back then. |
|
</p> |
|
|
|
<hr> |
|
<a name="status"></a> |
|
<h3><font color="#0000e0"><strong>Current status:</strong></font></h3> |
|
|
<p> |
<p> |
|
Although there have been no official releases of this port yet, |
|
the supported systems boot to multi-user and full snapshots are made |
|
periodically. |
|
</p> |
|
|
<h3><font color="#0000e0"><strong>Supported Hardware:</strong></font></h3> |
<p> |
|
Currently, no storage devices are supported, so the only way to run this |
|
port is in a diskless environment. |
|
</p> |
|
|
|
<hr> |
|
<a name="projects"></a> |
|
<h3><font color="#0000e0"><strong>Projects (in no particular order): |
|
</strong></font></h3> |
|
|
|
<p> |
<ul> |
<ul> |
<li>CPUs (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=intro&sektion=4&arch=hppa">intro</a> and (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=cpu&sektion=4&arch=hppa">cpu</a>)): |
<li>Improve overall stability |
<ul> |
<li>Support the on-board SCSI controller (NCR 53c7xx) |
<li>PA7000-based: 705, 710, 720, 730, 750 (currently under development) |
<li>Standalone boot blocks (once SCSI support is ready) |
<li>PA7100-based: 715/33, 715/50, 715/75, 725/50, 725/75, 735/100, 755/100 |
<li>Support keyboard and mouse (PS/2 and HIL) natively |
<li>PA7100LC-based: 712, 715/64, 715/80, 715/100, 715/100XC, 725/64, 725/100 |
<li>Improve port-specific documentation |
<li>PA7150-based: 735/125, 755/125 |
<li>X11 support |
<li>PA7200-based: J200, J210, J210XC, C100, C110 |
|
</ul> |
|
<li>bus/IO controllers (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=io&sektion=4&arch=hppa">I/O</a>): |
|
<ul> |
|
<li>Phantom PseudoBC GSC+ Port (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=phantomas&sektion=4&arch=hppa">phantomas</a>) |
|
<li> GSC (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=gsc&sektion=4&arch=hppa">gsc</a>): LASI (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=lasi&sektion=4&arch=hppa">lasi</a>), ASP (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=asp&sektion=4&arch=hppa">asp</a>) |
|
</ul> |
|
<li>SCSI controllers (currently under development): |
|
<ul> |
|
<li>NCR53C710 SCSI I/O Processors (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=osiop&sektion=4">osiop</a>) |
|
<li>NCR53C720 SCSI I/O Processors (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=siop&sektion=4">siop</a>) |
|
</ul> |
|
<li>SGC/GSC graphics (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=sti&sektion=4">sti</a>): |
|
<ul> |
|
<li>Artist (as found on 712) |
|
<li>CRX-8, CRX-24, HCRX-8, HCRX-24 |
|
</ul> |
|
<li>RS-232 devices: |
|
<ul> |
|
<li>On-board ns16550 or similar (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=com&sektion=4">com</a>) |
|
</ul> |
|
<li>Input devices (currently under development): |
|
<ul> |
|
<li>PS/2 keyboard and mouse |
|
<li>HIL keyboard and mouse |
|
</ul> |
|
</ul> |
</ul> |
Systems which may work (eventually): |
</p> |
|
|
|
<hr> |
|
<a name="hardware"></a> |
|
<h3><font color="#0000e0"><strong>Supported hardware:</strong></font></h3> |
|
|
|
<p> |
|
<h4>Supported models</h4> |
|
</p> |
|
|
|
<p> |
<ul> |
<ul> |
<li>PA2.0 systems (in 32-bit mode); |
<li>PA7100-based: 715/33, 715/50, 715/75, 725/50, 725/75, 735/100, 755/100 |
<li>HP 9000 834, 835, 836, 844, 845, 846; |
<li>PA7100LC-based: 712, 715/64, 715/80, 715/100, 715/100XC, 725/64, 725/100 |
<li>HP 9000 E23, E25, E35, E45, E55; |
<li>PA7150-based: 735/125, 755/125 |
<li>HP 3000 908, 918, 928, 938; |
<li>PA7200-based: J200, J210, J210XC, C100, C110 |
<li>Hitachi VQ200, VQ210, and some other non-HP workstations; |
|
<li>Precision Book from RDI Computer Corporation (well, unlikely) |
|
<li>HP VME and VXI single board systems (requires VME at least) |
|
</ul> |
</ul> |
<br> |
</p> |
Hardware is needed for this project, |
|
see <a href="want.html">"Wanted List"</a> |
<p> |
|
<h4>Supported peripherals</h4> |
|
</p> |
|
|
|
<p> |
|
The list of supported hardware below is not meant to be exhaustive. |
|
Hardware is needed for developers, to further help development and testing. |
|
Please see our <a href="want.html">"Wanted List"</a> |
(contact <a href="mailto:mickey@openbsd.org">mickey</a>). |
(contact <a href="mailto:mickey@openbsd.org">mickey</a>). |
|
</p> |
|
|
<h3><font color="#0000e0"><strong>Documentation</strong></font></h3> |
<p> |
|
<ul> |
|
<li><strong> |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=io&sektion=4&arch=hppa">Bus/IO |
|
controllers</a></strong> |
|
<ul> |
|
<li>Phantom PseudoBC GSC+ Port |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=phantomas&sektion=4&arch=hppa">phantomas</a>) |
|
<li>GSC |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=gsc&sektion=4&arch=hppa">gsc</a>): |
|
LASI |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=lasi&sektion=4&arch=hppa">lasi</a>), |
|
ASP |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=asp&sektion=4&arch=hppa">asp</a>) |
|
</ul> |
|
<li><strong>SGC/GSC graphics</strong> |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=sti&sektion=4">sti</a>) |
|
<ul> |
|
<li>Artist (as found on 712) |
|
<li>CRX-8, CRX-24, HCRX-8, HCRX-24 |
|
</ul> |
|
<li><strong>Serial ports</strong> |
|
<ul> |
|
<li>On-board ns16550 or similar |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=com&sektion=4">com</a>) |
|
</ul> |
|
<li><strong>Parallel ports</strong> |
|
<ul> |
|
<li>On-board parallel port |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=lpt&sektion=4">lpt</a>) |
|
</ul> |
|
<li><strong>Ethernet</strong> |
|
<ul> |
|
<li>On-board Intel i82596 ethernet |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=ie&sektion=4&arch=hppa">ie</a>) |
|
</ul> |
|
<li><strong>Miscellaneous devices</strong> |
|
<ul> |
|
<li>Battery-backed real time clock |
|
<li>Keyboard console (via PDC support) |
|
</ul> |
|
</ul> |
|
</p> |
|
|
<small>(most of which was released by HP for the |
<p> |
<a href="http://www.parisc-linux.org/">Linux/parisc</a> project)</small>: |
<h4>Unsupported models</h4> |
|
</p> |
|
|
|
<p> |
|
The following systems may eventually work: |
|
<ul> |
|
<li>PA7000-based machines: 705, 710, 720, 730, 750 |
|
<li>PA2.0 systems (in 32-bit mode) |
|
<li>HP 9000 834, 835, 836, 844, 845, 846 |
|
<li>HP 9000 E23, E25, E35, E45, E55 |
|
<li>HP 3000 908, 918, 928, 938 |
|
<li>Hitachi VQ200, VQ210, and some other non-HP workstations |
|
<li>Precision Book from RDI Computer Corporation (well, unlikely) |
|
<li>HP VME and VXI single board systems (requires VME at least) |
|
</ul> |
|
</p> |
|
|
|
<p> |
|
<h4>Unsupported peripherals</h4> |
|
</p> |
|
|
|
<p> |
|
This list is not meant to be exhaustive either, but sums up the most commonly |
|
encountered devices on hppa machines. |
|
<ul> |
|
<li><strong>Bus/IO controllers</strong> |
|
<ul> |
|
<li>EISA bus |
|
<li>PCI bus |
|
</ul> |
|
<li><strong>SCSI controllers</strong> |
|
<ul> |
|
<li>NCR53C710 SCSI I/O Processors |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=osiop&sektion=4">osiop</a>) |
|
<li>NCR53C720 SCSI I/O Processors |
|
(<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=siop&sektion=4">siop</a>) |
|
</ul> |
|
<li><strong>Input devices</strong> |
|
<ul> |
|
<li>PS/2 keyboard and mouse |
|
<li>HIL keyboard and mouse |
|
</ul> |
|
<li><strong>On-board floppy controller</strong> |
|
<li><strong>On-board audio</strong> |
|
</ul> |
|
</p> |
|
|
|
<hr> |
|
<a name="hwdocs"></a> |
|
<h3><font color="#0000e0"><strong>Hardware documentation:</strong></font></h3> |
|
|
|
<p><small> |
|
Most of the following documents have been released by Hewlett-Packard for |
|
the <a href="http://www.parisc-linux.org/">PA-RISC Linux</a> project. |
|
</small></p> |
|
|
|
<p> |
<ol type=1> |
<ol type=1> |
<li>HP PA-RISC CPUs |
<li>HP PA-RISC CPUs |
<ol type=a> |
<ol type=a> |
<li><a href="http://ftp.parisc-linux.org/docs/PCXL_ers.ps">PA7100LC CPU ERS</a> |
<li><a href="http://ftp.parisc-linux.org/docs/PCXL_ers.ps">PA7100LC CPU ERS</a> |
<li><a href="http://ftp.parisc-linux.org/docs/pcxl2_ers.ps">PA7300LC CPU ERS</a> |
<li><a href="http://ftp.parisc-linux.org/docs/pcxl2_ers.ps">PA7300LC CPU ERS</a> |
</ol> |
</ol> |
<li><b>Processor Dependent Code/I/O Dependent Code Interface</b><br> <small>(selected chapters from "PA-RISC I/O Architecture Specification")</small> |
<li>Processor Dependent Code/I/O Dependent Code Interface<br> <small>(selected chapters from "PA-RISC I/O Architecture Specification")</small> |
<ol type=a> |
<ol type=a> |
<li><a href="http://ftp.parisc-linux.org/docs/pdc32.pdf">PDC 1.1</a> |
<li><a href="http://ftp.parisc-linux.org/docs/pdc32.pdf">PDC 1.1</a> |
<li><a href="http://ftp.parisc-linux.org/docs/iodc.pdf">IODC 1.1</a> |
<li><a href="http://ftp.parisc-linux.org/docs/iodc.pdf">IODC 1.1</a> |
|
|
<li><a href="http://ftp.parisc-linux.org/docs/pdce.pdf">PDC Entry Points 2.0</a> |
<li><a href="http://ftp.parisc-linux.org/docs/pdce.pdf">PDC Entry Points 2.0</a> |
<li><a href="http://ftp.parisc-linux.org/docs/os_interface.pdf">OS Interface 2.0</a> |
<li><a href="http://ftp.parisc-linux.org/docs/os_interface.pdf">OS Interface 2.0</a> |
</ol> |
</ol> |
<li><b>Bus controllers/bridges/adaptors</b> |
<li>Bus controllers/bridges/adaptors |
<ol type=a> |
<ol type=a> |
<li><a href="http://ftp.parisc-linux.org/docs/hardball_ers.pdf">ASP</a> |
<li><a href="http://ftp.parisc-linux.org/docs/hardball_ers.pdf">ASP</a> |
<li><a href="http://ftp.parisc-linux.org/docs/lasi_ers.ps">LASI Core Bus Adapter (including lan, scsi, serial, lpt controllers)</a> |
<li><a href="http://ftp.parisc-linux.org/docs/lasi_ers.ps">LASI Core Bus Adapter (including lan, scsi, serial, lpt controllers)</a> |
|
|
<li><a href="http://ftp.parisc-linux.org/docs/elroy_ers.ps">Elroy ERS (Edited for Open Source)</a> |
<li><a href="http://ftp.parisc-linux.org/docs/elroy_ers.ps">Elroy ERS (Edited for Open Source)</a> |
<li>Astro <a href="http://ftp.parisc-linux.org/docs/astro_intro.ps">Overview</a>, <a href="http://ftp.parisc-linux.org/docs/astro_errors.ps">Error handling</a>,<a href="http://puffin.external.hp.com/docs/astro_ioc.ps">R2I Operations</a>, <a href="http://puffin.external.hp.com/docs/astro_regmap.ps">Registers Map</a>, <a href="http://puffin.external.hp.com/docs/astro_runway.ps">Runway Interface</a>, <a href="http://puffin.external.hp.com/docs/astro_sysmap.ps">System Mamory Map</a> |
<li>Astro <a href="http://ftp.parisc-linux.org/docs/astro_intro.ps">Overview</a>, <a href="http://ftp.parisc-linux.org/docs/astro_errors.ps">Error handling</a>,<a href="http://puffin.external.hp.com/docs/astro_ioc.ps">R2I Operations</a>, <a href="http://puffin.external.hp.com/docs/astro_regmap.ps">Registers Map</a>, <a href="http://puffin.external.hp.com/docs/astro_runway.ps">Runway Interface</a>, <a href="http://puffin.external.hp.com/docs/astro_sysmap.ps">System Mamory Map</a> |
</ol> |
</ol> |
<li><a href="http://ftp.parisc-linux.org/docs/sti.pdf">Stinger graphics</a> |
<li><a href="http://ftp.parisc-linux.org/docs/sti.pdf">Stinger |
<li><a href="http://www.lsilogic.com/techlib/techdocs/old_storage/770_2_0.pdf">NCR 53C700/710/720 SCSI I/O Processors</a> |
graphics</a> |
|
<li><a href="http://www.lsilogic.com/techlib/techdocs/old_storage/770_2_0.pdf">NCR |
|
53C700/710/720 SCSI I/O Processors</a> |
<small>(the doc is actually for 770, which is claimed as compatible)</small> |
<small>(the doc is actually for 770, which is claimed as compatible)</small> |
<li>Intel <a href="http://developer.intel.com/design/network/datashts/290219.htm">i82596DX/SX</a> and <a href="http://developer.intel.com/design/network/datashts/290218.htm">i82596CA</a> Ethernet Controllers |
<li>Intel |
|
<a href="http://developer.intel.com/design/network/datashts/290219.htm">i82596DX/SX</a> |
|
and |
|
<a href="http://developer.intel.com/design/network/datashts/290218.htm">i82596CA</a> |
|
Ethernet Controllers |
</ol> |
</ol> |
Or see more information at <a href="http://www.openpa.net/">OpenPA</a>. |
</p> |
|
|
|
<p> |
|
Of course, no hppa page, be it OpenBSD or not, could pretend to be serious |
|
without linking to the essential <a href="http://www.openpa.net/">OpenPA</a> |
|
reference website. |
|
</p> |
|
|
<hr> |
<hr> |
|
<a name="install"></a> |
|
<h3><font color="#0000e0"> |
|
<strong>Getting and installing OpenBSD/hppa:</strong> |
|
</font></h3> |
|
|
<h3><font color="#0000e0"><strong>Building Cross-Tools</strong></font></h3> |
<!-- not yet kiddies |
<pre> |
|
cd /usr/src |
|
sudo make TARGET=hppa cross-tools |
|
</pre> |
|
<p> |
<p> |
cross-tools build process may fail in the libc stage, consider that's |
The latest supported OpenBSD/hppa release is |
all right, since libc support is not finished yet. |
<a href="32.html">OpenBSD 3.2</a>. |
|
Here are the |
|
<a href="ftp://ftp.OpenBSD.org/pub/OpenBSD/3.2/hppa/INSTALL.hppa"> |
|
OpenBSD/hppa 3.2 installation instructions |
|
</a>. |
|
</p> |
|
--> |
|
|
<a name="boot_lif"></a> |
|
<h4>Build boot.lif file using cross-tools:</h4> |
|
<p> |
<p> |
<pre> |
Snapshots are made available from time to time, in |
cd /sys/arch/hppa/stand |
<a href="ftp://ftp.OpenBSD.org/pub/OpenBSD/snapshots/hppa">this location</a> |
make obj |
as well as in a few |
set cross=(/usr/cross/hppa/usr/bin) |
<a href="ftp.html">mirrors</a>. |
make MACHINE=hppa MACHINE_ARCH=hppa \ |
Here are the |
"AS=$cross/as" "CC=$cross/cc" "CXX=$cross/c++" \ |
<a href="ftp://ftp.OpenBSD.org/pub/OpenBSD/snapshots/hppa/INSTALL.hppa"> |
"CPP=$cross/cpp" "LD=$cross/ld" \ |
OpenBSD/hppa snapshot installation instructions |
"AR=$cross/ar" "STRIP=$cross/strip" \ |
</a> as well. |
"LORDER=$cross/lorder" "NM=$cross/nm" \ |
|
"RANLIB=$cross/ranlib" "SIZE=$cross/size" |
|
</pre> |
|
|
|
<p> |
|
One will have a <a href="http://hppa.lucifier.net/#boot_lif"><em>boot.lif</em></a> |
|
file to boot then in the obj-directory. |
|
That image may include <em>diskless</em> kernel image if one was available |
|
in the <em>sys/arch/hppa/compile/SHEPHERD_PIE/bsd</em>. |
|
<br> |
|
Kernel cross-build process is similar to the one for boot, consult |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=config&apropos=0&sektion=0 |
|
&manpath=OpenBSD+Current&format=html">config(8)</a> |
|
and |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=options&apropos=0&sektion=0&manpath=OpenBSD+Current&format=html">options(8)</a> |
|
for kernel build options and configuration. |
|
</p> |
</p> |
|
|
<hr> |
<hr> |
In order to use the <a href="http://hppa.lucifier.net/#boot_lif">boot.lif</a> files |
<a name="#netboot"></a> |
you must prepare your server and instruct your machine to boot off the network: |
<h3><font color="#0000e0"><strong>Netbooting OpenBSD/hppa:</strong></font></h3> |
|
|
|
<p> |
|
The <tt>boot.lif</tt> file contains both a bootloader and a kernel. |
|
To boot it from the network, a server machine has to be setup so as to |
|
let the hppa machine retrieve it: |
<ol> |
<ol> |
<li>Server setup |
<li>Server setup |
<ul> |
<ul> |
<li> For older machines (705, 7[1235]0, old 715) |
<li>For older machines (705, 7[1235]0, old 715) |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rbootd&apropos=0&sektion=0&manpath=OpenBSD+Current&format=html">rbootd</a> must be setup and started.<br> |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rbootd&sektion=8">rbootd</a> |
|
must be setup and started. |
<ul> |
<ul> |
<li><b>/etc/<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rbootd&apropos=0&sektion=0&manpath=OpenBSD+Current&format=html">rbootd</a>.conf</b> |
<li><tt>/etc/rbootd.conf</tt> contains a single line per machine |
contains a single line per machine you entered to boot from the server. |
needing to boot from the server. Each line contains the ethernet |
Each line contains the ethernet address of the client hppa machine, and |
address of the client hppa machine, and the filename to be loaded from |
the filename to be loaded from the tftp server. For example: |
the tftp server (relative to <tt>/usr/mdec/rbootd</tt>). |
|
For example: |
<pre> |
<pre> |
8:0:9:70:c4:11 <a href="#boot_lif">boot.lif</a> # 9000/720 |
8:0:9:70:c4:11 <a href="#boot_lif">boot.lif</a> # 9000/720 |
8:0:9:19:fb:a0 <a href="#boot_lif">boot.lif</a> # 9000/725 |
8:0:9:19:fb:a0 <a href="#boot_lif">boot.lif</a> # 9000/725 |
|
|
</li> |
</li> |
</ul> |
</ul> |
</li> |
</li> |
<li>Recent machines (712, new 715, 725) won't look for rbootd at all, but require a |
<li>Recent machines (712, newer 715, 725) will not look for rbootd at all, |
<b>bootp</b> setup.<br> |
but instead require a <b>bootp</b> setup. |
<ul> |
<ul> |
<li><b>/etc/<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=bootptab&apropos=0&sektion=5&manpath=OpenBSD+Current&format=html">bootptab</a></b> contains an information block for each machine. For example: |
<li><tt>/etc/<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=bootptab&sektion=5">bootptab</a></tt> |
|
contains an information block for each machine. For example: |
<pre> |
<pre> |
# 9000/715 |
# 9000/715 |
boron:\ |
boron:\ |
|
|
</pre> |
</pre> |
</li> |
</li> |
<li> |
<li> |
Create directory /tftpboot and put the <a href="#boot_lif">boot.lif</a> in it.<br> |
Create directory <tt>/tftpboot</tt> and put the |
|
<tt><a href="#boot_lif">boot.lif</a></tt> file in it.<br> |
</li> |
</li> |
<li> |
<li> |
Write an entry for your hppa in the <b>/etc/ethers</b> file:<br> |
Write an entry for the hppa in <tt>/etc/ethers</tt>: |
<pre> |
<pre> |
08:00:09:5f:5a:6e boron |
08:00:09:5f:5a:6e boron |
</pre> |
</pre> |
</li> |
</li> |
<li> |
<li> |
Write an entry for 'boron' in the <b>/etc/hosts</b> file:<br> |
Write another entry for it in <tt>/etc/hosts</tt>: |
<pre> |
<pre> |
10.0.1.143 boron |
10.0.1.143 boron |
</pre> |
</pre> |
</li> |
</li> |
<li> |
<li> |
Create directory /usr/local/exports/boron/root and put <a href="http://hppa.lucifier.net/root/dev/MAKEDEV">/dev/MAKEDEV</a>, |
Create directory <tt>/usr/local/exports/boron/root</tt> and unpack |
<a href="http://hppa.lucifier.net/root/sbin/init">/sbin/init</a>, <a href="http://hppa.lucifier.net/root/bin/ksh">/bin/ksh</a> |
at least <tt>base32.tgz</tt> and <tt>etc32.tgz</tt> in it. |
in their relative locations. |
|
</li> |
</li> |
<li> |
<li> |
Write an entry in <b>/etc/exports</b> so the root directory gets exported to the client: |
After the sets are unpacked, create device nodes in <tt>dev/</tt> by |
|
running <tt>MAKEDEV</tt> and alter the configuration files in |
|
<tt>/etc</tt> (refer to the installation notes for details). |
|
</li> |
|
<li> |
|
Finally, add an entry to <tt>/etc/exports</tt> in order to export |
|
the root directory to the client: |
<pre> |
<pre> |
/usr/local/exports/boron/root boron |
/usr/local/exports/boron/root boron |
</pre> |
</pre> |
|
You might want to also create and export a swap area. |
</li> |
</li> |
<li> |
<li> |
Remember you will have to enable <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=bootpd&apropos=0&sektion=8&manpath=OpenBSD+Current&format=html">bootpd</a> |
The last step is to enable the necessary daemons for all of this to |
and <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=tftpd&apropos=0&sektion=8&manpath=OpenBSD+Current&format=html">tftpd</a> |
work. |
in /etc/inetd.conf, and restart <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=inetd&apropos=0&sektion=8&manpath=OpenBSD+Current&format=html">inetd</a>. |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=bootpd&sektion=8">bootpd</a> |
|
and |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=tftpd&sektion=8">tftpd</a> |
|
are usually run from |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=inetd&sektion=8">inetd</a>, |
|
so <tt>/etc/inetd.conf</tt> has to be modified and |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=inetd&sektion=8">inetd</a> |
|
restarted. |
</li> |
</li> |
<li> |
<li> |
Also remember to enable <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=nfsd&apropos=0&sektion=8&manpath=OpenBSD+Current&format=html">nfs_server</a> |
For proper NFS server operation, |
, <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rarpd&apropos=0&sektion=8&manpath=OpenBSD+Current&format=html">rarpd</a> |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=portmap&sektion=8">portmap</a>, |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=mountd&sektion=8">mountd</a> |
and <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=portmap&apropos=0&sektion=8&manpath=OpenBSD+Current&format=html">portmap</a> |
and |
in <a |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=nfsd&sektion=8">nfsd</a> |
href="http://www.openbsd.org/cgi-bin/man.cgi?query=rc.conf&apropos=0&sektion=8&manpath=OpenBSD+Current&format=html">/etc/rc.conf</a>. |
need to be enabled, as well as |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rarpd&sektion=8">rarpd</a> |
|
and |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rpc.bootparamsd&sektion=8">rpc.bootparamsd</a> |
|
in |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rc.conf&sektion=5">rc.conf</a>. |
</li> |
</li> |
</ul> |
</ul> |
</li> |
</li> |
<li>For further reading on server setup for network booting in general, see also: <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=diskless&apropos=0&sektion=0&manpath=OpenBSD+Current&format=html">diskless(8)</a>.</li> |
<li>For further reading on server setup for network booting in general, |
|
please refer to the |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=diskless&sektion=8">diskless(8)</a> |
|
manual page. |
|
</li> |
</ul> |
</ul> |
<p> |
<p> |
<li>Client Network Boot |
<li>Client Network Boot |
<ul> |
<ul> |
<li>BOOT_ADMIN<br> |
<li>BOOT_ADMIN<br> |
In order to get to the BOOT_ADMIN prompt, you must hit <em><esc></em> as the |
In order to get to the BOOT_ADMIN prompt, hit the <em><esc></em> |
machine is coming up. Once it probes bootable devices, type 'a' for |
key as the machine is coming up. Once it has probed bootable devices, |
the 'BOOT_ADMIN' prompt. |
a menu will be displayed; if the prompt is <i>not</i> <b>BOOT_ADMIN</b>, |
|
it will be necessary to type <i>``a''</i> to access it. |
</li> |
</li> |
<li>network boot command |
<li>Network boot command<br> |
Once at the 'BOOT_ADMIN' prompt, type: |
Once at the 'BOOT_ADMIN' prompt, the command |
<pre> |
<pre> |
BOOT_ADMIN> boot lan isl |
BOOT_ADMIN> boot lan isl |
</pre> |
</pre> |
|
will proceed to the bootstrap of boot.lif. |
</ul> |
</ul> |
... and you are on your way to booting boot.lif! |
</li> |
</li> |
|
</ol> |
</ol> |
|
</p> |
|
|
<hr> |
<hr> |
<a href="plat.html"><img height=24 width=24 src="back.gif" border=0 alt=OpenBSD></a> |
<a name="#cross"></a> |
<a href="mailto:www@openbsd.org">www@openbsd.org</a> |
<h3><font color="#0000e0"><strong>Cross-compiling kernels:</strong></font></h3> |
|
|
|
<p> |
|
The OpenBSD source tree provides some cross-compilation facilities. |
|
First, a set of hppa cross tools (cross compiler, cross binutils, etc) must |
|
be created: |
|
<pre> |
|
# cd /usr/src |
|
# make TARGET=hppa cross-includes cross-binutils cross-gcc |
|
</pre> |
|
This will build and install the various utilities in <tt>/usr/cross/hppa</tt>. |
|
Note that this step must be run as root, or using |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=sudo&sektion=8">sudo</a>. |
|
</p> |
|
|
|
<a name="boot_lif"></a> |
|
<h4>Building boot.lif using cross-tools</h4> |
|
|
|
<p> |
|
<ul> |
|
<li>Building <i>mkboot</i> |
|
<p> |
|
mkboot is the only specific host tool needed for the boot.lif build. |
|
<pre> |
|
$ cd /usr/src/sys/arch/hppa/stand/mkboot |
|
$ MACHINE=hppa make obj depend all |
|
</pre> |
|
</p></li> |
|
<li>Building the kernel |
|
<p> |
|
The kernel can be configured as usual, and then built using the cross-tools. |
|
<pre> |
|
$ cd /usr/src/sys/arch/hppa/conf |
|
$ config GENERIC |
|
$ cd /usr/src/sys/arch/hppa/compile/GENERIC |
|
$ export CROSS=/usr/cross/hppa/usr/bin |
|
$ env MACHINE=hppa MACHINE_ARCH=hppa \ |
|
AR=$CROSS/ar AS=$CROSS/as CC=$CROSS/cc CPP=$CROSS/cpp LD=$CROSS/ld \ |
|
NM=$CROSS/nm RANLIB=$CROSS/ranlib SIZE=$CROSS/size STRIP=$CROSS/strip \ |
|
make depend bsd |
|
</pre> |
|
</p></li> |
|
<li>Build boot.lif |
|
<p>With the kernel compiled, the boot loader can now be compiled and the |
|
lif file generated. |
|
<pre> |
|
$ cd /usr/src/sys/arch/hppa/stand |
|
$ export CROSS=/usr/cross/hppa/usr/bin |
|
$ env MACHINE=hppa MACHINE_ARCH=hppa \ |
|
AR=$CROSS/ar AS=$CROSS/as CC=$CROSS/cc CPP=$CROSS/cpp LD=$CROSS/ld \ |
|
NM=$CROSS/nm RANLIB=$CROSS/ranlib SIZE=$CROSS/size STRIP=$CROSS/strip \ |
|
make SKIPDIR=mkboot obj depend all |
|
</pre> |
|
</p></li> |
|
</ul> |
|
The final boot.lif file stands in |
|
<tt>/usr/src/sys/arch/hppa/boot/obj/boot.lif</tt> |
|
</p> |
|
|
|
<hr> |
|
<a href="plat.html"> |
|
<img height="24" width="24" src="back.gif" border="0" alt="Supported platforms"> |
|
</a> |
<br> |
<br> |
|
<small><a href="mailto:www@openbsd.org">www@openbsd.org</a></small> |
|
<br> |
<small>$OpenBSD$</small> |
<small>$OpenBSD$</small> |
|
|
</body> |
</body> |
</html> |
</html> |