version 1.91, 2003/02/12 10:11:04 |
version 1.92, 2003/02/17 17:48:53 |
|
|
<li><a href="#hardware">Supported hardware list</a> |
<li><a href="#hardware">Supported hardware list</a> |
<li><a href="#hwdocs">Hardware documentation</a> |
<li><a href="#hwdocs">Hardware documentation</a> |
<li><a href="#install">Getting and installing OpenBSD/hppa</a> |
<li><a href="#install">Getting and installing OpenBSD/hppa</a> |
<li><a href="#netboot">Netbooting OpenBSD/hppa</a> |
<li><a href="#netboot">Netbooting the installation media</a> |
<li><a href="#cross">Cross-compiling kernels</a> |
|
</ul> |
</ul> |
</p> |
</p> |
|
|
|
|
<h3><font color="#0000e0"><strong>Current status:</strong></font></h3> |
<h3><font color="#0000e0"><strong>Current status:</strong></font></h3> |
|
|
<p> |
<p> |
Although there have been no official releases of this port yet, |
Although there have been no official releases of this port yet, the |
the supported systems boot to multi-user and full snapshots are made |
supported systems boot to multi-user and full snapshots are made |
periodically. |
periodically. |
</p> |
</p> |
|
|
|
|
|
|
<hr> |
<hr> |
<a name="netboot"></a> |
<a name="netboot"></a> |
<h3><font color="#0000e0"><strong>Netbooting OpenBSD/hppa:</strong></font></h3> |
<h3><font color="#0000e0"><strong>Netbooting the installation media:</strong></font></h3> |
|
|
<p> |
<p> |
The <tt>boot.lif</tt> file contains both a bootloader and a kernel. |
The <tt>lif32.fs</tt> file contains both a bootloader and an installation |
|
miniroot. |
To boot it from the network, a server machine has to be setup so as to |
To boot it from the network, a server machine has to be setup so as to |
let the hppa machine retrieve it: |
let the hppa machine retrieve it: |
<ol> |
<ol> |
|
|
the tftp server (relative to <tt>/usr/mdec/rbootd</tt>). |
the tftp server (relative to <tt>/usr/mdec/rbootd</tt>). |
For example: |
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 lif32.fs # 9000/720 |
8:0:9:19:fb:a0 <a href="#boot_lif">boot.lif</a> # 9000/725 |
8:0:9:19:fb:a0 lif32.fs # 9000/725 |
</pre> |
</pre> |
</li> |
</li> |
</ul> |
</ul> |
|
|
# 9000/715 |
# 9000/715 |
boron:\ |
boron:\ |
ha=0800095f5a6e:\ |
ha=0800095f5a6e:\ |
bf=boot.lif:\ |
bf=lif32.fs:\ |
hd=:\ |
hd=:\ |
ht=ethernet:\ |
ht=ethernet:\ |
ip=10.0.1.143:\ |
ip=10.0.1.143:\ |
rp=/usr/local/exports/boron/root:\ |
|
sm=255.255.255.0:\ |
sm=255.255.255.0:\ |
td=/tftpboot: |
td=/tftpboot: |
</pre> |
</pre> |
</li> |
</li> |
<li> |
<li> |
Create directory <tt>/tftpboot</tt> and put the |
Create directory <tt>/tftpboot</tt> and put the |
<tt><a href="#boot_lif">boot.lif</a></tt> file in it.<br> |
<tt>lif32.fs</tt> file in it.<br> |
</li> |
</li> |
<li> |
<li> |
Write an entry for the hppa in <tt>/etc/ethers</tt>: |
Write an entry for the hppa in <tt>/etc/ethers</tt>: |
|
|
</pre> |
</pre> |
</li> |
</li> |
<li> |
<li> |
Create directory <tt>/usr/local/exports/boron/root</tt> and unpack |
|
at least <tt>base32.tgz</tt> and <tt>etc32.tgz</tt> in it. |
|
</li> |
|
<li> |
|
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> |
|
/usr/local/exports/boron/root boron |
|
</pre> |
|
You might want to also create and export a swap area. |
|
</li> |
|
<li> |
|
The last step is to enable the necessary daemons for all of this to |
The last step is to enable the necessary daemons for all of this to |
work. |
work. |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=bootpd&sektion=8">bootpd</a> |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=bootpd&sektion=8">bootpd</a> |
|
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=inetd&sektion=8">inetd</a>, |
<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 |
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> |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=inetd&sektion=8">inetd</a> |
restarted. |
restarted. Also, |
</li> |
|
<li> |
|
For proper NFS server operation, |
|
<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=nfsd&sektion=8">nfsd</a> |
|
need to be enabled, as well as |
|
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rarpd&sektion=8">rarpd</a> |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rarpd&sektion=8">rarpd</a> |
and |
needs to be enabled in |
<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>. |
<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=rc.conf&sektion=5">rc.conf</a>. |
</li> |
</li> |
</ul> |
</ul> |
|
|
<pre> |
<pre> |
BOOT_ADMIN> boot lan isl |
BOOT_ADMIN> boot lan isl |
</pre> |
</pre> |
will proceed to the bootstrap of boot.lif. |
will proceed to the bootstrap of lif32.fs. |
</ul> |
</ul> |
</li> |
</li> |
</ol> |
</ol> |
</p> |
|
|
|
<hr> |
|
<a name="cross"></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 |
|
$ env MACHINE=hppa make obj |
|
$ env MACHINE=hppa make 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 make SKIPDIR=mkboot obj |
|
$ 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 depend all |
|
</pre> |
|
</p></li> |
|
</ul> |
|
The final boot.lif file stands in |
|
<tt>/usr/src/sys/arch/hppa/stand/boot/obj/boot.lif</tt> |
|
</p> |
</p> |
|
|
<hr> |
<hr> |