www/hppa.html

269 lines
12 KiB
HTML

<!doctype html>
<html lang=en id=platform>
<meta charset=utf-8>
<title>OpenBSD/hppa</title>
<meta name="description" content="the OpenBSD/hppa page">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="openbsd.css">
<link rel="canonical" href="https://www.openbsd.org/hppa.html">
<h2 id=OpenBSD>
<a href="index.html">
<i>Open</i><b>BSD</b></a>
hppa
</h2>
<hr>
<table><tr><td>
<p>
OpenBSD/hppa runs on a large set of the 32-bit Hewlett Packard Precision
Architecture workstations and servers (HP PA-RISC). A subset of the 64-bit
models are supported in 32-bit mode, as well.
<p>
A mailing list dedicated to the OpenBSD/hppa port is available at
<a href="mailto:hppa@openbsd.org">hppa@openbsd.org</a>.
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>
The current port maintainer is
Mark Kettenis (<a href="mailto:kettenis@openbsd.org">kettenis@openbsd.org</a>).
Others are definitely welcome to contribute!
<td>
<img src="images/hppa.jpg" width="208" height="288" alt="hppa">
</table>
<hr>
<h3 id="history"><strong>History</strong></h3>
<p>
This project was started in those days when the only
open source operating systems for HP PA-RISC computers were
<a href="http://www.cs.utah.edu/flux/lites/html">Lites</a> and
<a href="http://www.mklinux.org">MkLinux</a>.
These two sources were a major supply of information and
code for initial development of the OpenBSD/hppa port.
<a href="http://www.cs.utah.edu/~mike/hpbsd/hpbsd.html">HPBSD</a>
is encumbered by HP proprietary code and USL licensing and is
not publicly available.
One of the major direct benefits from previous porting efforts
(besides the code, of course) was support for HP PA-RISC in GCC and
binutils, which allowed quick building of a cross-tools environment
for development.
<p>
Later on, Hewlett-Packard decided to sponsor a
<a href="http://www.parisc-linux.org/">Linux</a> port to the PA-RISC
family, which actually resulted in some proprietary documentation
being released, even though their target was a different class of 9000
machines back then.
<h3 id="status"><strong>Current status</strong></h3>
<p>
Currently, all the supported systems boot multi-user.
In addition to the release, full snapshots are made periodically,
and work is ongoing to provide better hardware support.
<h3 id="hardware"><strong>Supported hardware</strong></h3>
For a system component and device driver listing for this architecture, see
<a href="https://man.openbsd.org/hppa/intro.4">intro(4/hppa)</a>.
<p>
<ul>
<li><a href="https://man.openbsd.org/hppa/cpu.4">cpu(4)</a> support for the 7000,
7100, 7100LC, 7150, 7200, 7300LC, 8000, 8200, 8500, 8600, 8700 processors<br>
found on the following systems:
<ul>
<li>PA7000-based: 705, 710, 720, 730, 750
<li>PA7100-based: 715/33, 715/50, 715/75, 725/50, 725/75, 735/100, 742i, 745i, 747i, 755/100
<li>PA7100LC-based: 712, 715/64, 715/80, 715/100, 715/100XC, 725/64, 725/100, 743i, 748i, SAIC Galaxy 1100
<li>PA7150-based: 735/125, 755/125
<li>PA7300LC-based: 744, 745, 748, A180[C], B132L[+], B160L, B180L+, C132L, C160L, Dx20, Dx30, RDI PrecisionBook (C160L)
<li>PA7200-based: C100, C110, J200, J210, J210XC, Kx00, Kx10, Kx20
<li>PA8000-based (in 32-bit mode): C160, C180, J280, J282
<li>PA8200-based (in 32-bit mode): C200, C240, J2240
<li>PA8500-based (in 32-bit mode): B1000, B2000, C360, C3000, J5000, J7000
<li>PA8600-based (in 32-bit mode): B2600, C3600, J5600, J6000, J7600
<li>PA8700-based (in 32-bit mode): C3650, C3700, C3750, J6700, J6750
</ul>
<li><a href="https://man.openbsd.org/hppa/mem.4">mem(4)</a> memory controllers for up to 2GB of memory.
<li><a href="https://man.openbsd.org/hppa/io.4">io(4)</a> Bus/IO controllers and bridges, including:
<ul>
<li><a href="https://man.openbsd.org/hppa/phantomas.4">phantomas(4)</a> Phantom PseudoBC GSC+ Port,
<li><a href="https://man.openbsd.org/hppa/uturn.4">uturn(4)</a> U2/UTurn Runway-GSC with IOA,
<li><a href="https://man.openbsd.org/hppa/gsc.4">gsc(4)</a> GSC,
<li><a href="https://man.openbsd.org/hppa/lasi.4">lasi(4)</a> LASI,
<li><a href="https://man.openbsd.org/hppa/asp.4">asp(4)</a> ASP,
<li><a href="https://man.openbsd.org/hppa/wax.4">wax(4)</a> WAX,
<li><a href="https://man.openbsd.org/hppa/astro.4">astro(4)</a> Astro Memory and I/O controller.
</ul>
<li><a href="https://man.openbsd.org/hppa/dino.4">dino(4)</a> Dino/Cujo or <a href="https://man.openbsd.org/hppa/elroy.4">elroy(4)</a>) Elroy PCI host bridges providing <a href="https://man.openbsd.org/hppa/pci.4">pci(4)</a> PCI busses, supporting most <a href="https://man.openbsd.org/hppa/pci.4">pci(4)</a> cards.
<li><a href="https://man.openbsd.org/hppa/ppb.4">ppb(4)</a> standard PCI-PCI bridges, including PCI expansion backplanes.
<li><a href="https://man.openbsd.org/hppa/cbb.4">cbb(4)</a> YENTA-compatible PCI-CardBus bridges supporting some <a href="https://man.openbsd.org/hppa/cardbus.4">cardbus(4)</a> and <a href="https://man.openbsd.org/hppa/pcmcia.4">pcmcia(4)</a> cards, on some models.
<li><a href="https://man.openbsd.org/oosiop.4">oosiop(4)</a>,
<a href="https://man.openbsd.org/osiop.4">osiop(4)</a>
and
<a href="https://man.openbsd.org/siop.4">siop(4)</a>
on-board SCSI controllers.
<li><a href="https://man.openbsd.org/pciide.4">pciide(4)</a> IDE drive controller supporting <a href="https://man.openbsd.org/wd.4">wd(4)</a> and <a href="https://man.openbsd.org/cd.4">cd(4)</a> drives.
<li><a href="https://man.openbsd.org/hppa/dc.4">dc(4)</a> on-board Digital 10/100Mbit ethernet.
<li><a href="https://man.openbsd.org/hppa/ohci.4">ohci(4)</a> on-board USB controller supporting most <a href="https://man.openbsd.org/usb.4">usb(4)</a> devices.
<li><a href="https://man.openbsd.org/hppa/sti.4">sti(4)</a> SGC/GSC/PCI graphics controllers.
<li><a href="https://man.openbsd.org/hppa/com.4">com(4)</a> on-board ns16550 serial ports.
<li><a href="https://man.openbsd.org/hppa/lpt.4">lpt(4)</a> on-board parallel port.
<li><a href="https://man.openbsd.org/hppa/harmony.4">harmony(4)</a> on-board CS4215/AD1849 audio.
<li><a href="https://man.openbsd.org/hppa/hilkbd.4">hilkbd(4)</a> HIL keyboards.
<li><a href="https://man.openbsd.org/hppa/hilms.4">hilms(4)</a> HIL mice and graphics tablet.
<li><a href="https://man.openbsd.org/hppa/hilid.4">hilid(4)</a> HIL ID modules.
<li><a href="https://man.openbsd.org/hppa/pckbd.4">pckbd(4)</a> PS/2 keyboards.
<li><a href="https://man.openbsd.org/pms.4">pms(4)</a> PS/2 mice.
<li><a href="https://man.openbsd.org/hppa/power.4">power(4)</a> soft power button as available on some models.
<li><a href="https://man.openbsd.org/hppa/lcd.4">lcd(4)</a> front-panel display on some models.
<li>Battery-backed real time clock.
</ul>
<p>
<h4>Unsupported systems and devices</h4>
The following systems are unsupported, but may eventually be coaxed to life.
Some of them will boot OpenBSD, but there is not enough device support for
OpenBSD to be really useful on them.
<ul>
<li>PA7100LC-based: Dx00, Dx10
<li>PA7200-based: Dx50, Dx60
<li>PA8000-based (in 32-bit mode): Dx70, Dx80/R380, Kx50/Kx60
<li>PA8200-based (in 32-bit mode): D390/R390, Kx70/Kx80
<li>HP 9000 E-Class (with limited I/O)
<li>Most Hitachi PA-RISC workstations and servers
</ul>
<p>
The following systems are very unlikely to be supported since they either have
incompatible firmware (the 3000s) or almost completely undocumented I/O
subsystems (the 8x7s).
<ul>
<li>HP 3000 900
<li>HP 9000 8x7 (F, G, H, I-Class)
</ul>
Even though some 64-bit systems are supported by this port in 32-bit mode,
the following models cannot be supported due to the I/O system limitations:
<ul>
<li>PA8500-based: A400/rp24x0, L1000/L2000
<li>PA8600-based: A400/rp2450, L3000/rp5400
<li>PA8700-based: A500/rp2470, N4000/rp74x0, rp8400
<li>PA8800-based: A500-9x, C8000, rp3410, rp3440, rp4410, rp4440, rp7420, rp84x0
<li>PA8900-based: C8000, rp3410, rp3440, rp4410, rp4440, rp7420, rp84x0
</ul>
<p>
Convex PA-RISC systems (NUMA supercomputing clusters
consisting of one or more 8-way SMP nodes with PA7100 or PA7200 CPUs)
are unlikely to be ever supported.
<p>
All other HP 9000 6xx, 8xx and 9xx server systems will probably never
be supported by this port since they are of 1.0 PA-RISC architecture,
which is substantially inferior to the 1.1.
<p>
<h4>Unsupported peripherals</h4>
<p>
This list is not meant to be exhaustive either, but sums up the most commonly
encountered devices on hppa machines.
<ul>
<li><a href="https://man.openbsd.org/hppa/dino.4">dino(4)</a> Dino in card mode.
<li><a href="https://man.openbsd.org/hppa/pcmcia.4">pcmcia(4)</a> PCMCIA adapters.
<li><a href="https://man.openbsd.org/hppa/mongoose.4">mongoose(4)</a> EISA bus adapter.
<li>VME controller
<li>Any HP-PB devices
<li>On-board floppy controller
<li>Dino's PS/2 keyboard and mouse controller
<li>Power management on PrecisionBook
</ul>
<h3 id="install">
<strong>Getting and installing</strong>
</h3>
<p>
The latest supported OpenBSD/hppa release is
<a href="73.html">OpenBSD 7.3</a>.
Here are the
<a href="https://ftp.openbsd.org/pub/OpenBSD/7.3/hppa/INSTALL.hppa">
OpenBSD/hppa installation instructions</a>.
<p>
Snapshots are made available from time to time, in
<a href="https://cdn.openbsd.org/pub/OpenBSD/snapshots/hppa">this location</a>
as well as on a few
<a href="ftp.html">mirrors</a>.
Here are the
<a href="https://ftp.openbsd.org/pub/OpenBSD/snapshots/hppa/INSTALL.hppa">
OpenBSD/hppa snapshot installation instructions</a> as well.
<h3 id="hwdocs"><strong>Hardware documentation</strong></h3>
<p>
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.
<p>
<ol type=1>
<li>HP PA-RISC CPUs
<ol type=a>
<li><a href="http://ftp.parisc-linux.org/docs/chips/PCXL_ers.pdf">PA7100LC CPU ERS</a>
<li><a href="http://ftp.parisc-linux.org/docs/chips/pcxl2_ers.pdf">PA7300LC CPU ERS</a>
</ol>
<li>Processor Dependent Code/I/O Dependent Code Interface<br> <small>(selected chapters from "PA-RISC I/O Architecture Specification")</small>
<ol type=a>
<li><a href="http://ftp.parisc-linux.org/docs/arch/pdc11-v0.96-Ch1-procs.pdf">PDC 1.1</a>
<li><a href="http://ftp.parisc-linux.org/docs/arch/pdc11-v0.96-Ch3-IODC.pdf">IODC 1.1</a>
<li><a href="http://ftp.parisc-linux.org/docs/arch/ver_nums.pdf">Version and Identification Number Allocation</a>
<li><a href="http://ftp.parisc-linux.org/docs/arch/pdc20-v0.36-ChC-datafmt.pdf">Memory Data Formats 2.0</a>
<li><a href="http://ftp.parisc-linux.org/docs/arch/pdc20-v1.0-Ch3-entry.pdf">PDC Entry Points 2.0</a>
<li><a href="http://ftp.parisc-linux.org/docs/arch/pdc20-v1.0-Ch4-procs.pdf">PDC Procedures 2.0</a>
<li><a href="http://ftp.parisc-linux.org/docs/arch/pdc20-v1.0-Ch6-OS.pdf">OS Interface 2.0</a>
</ol>
<li>Bus controllers/bridges/adaptors
<ol type=a>
<li><a href="http://ftp.parisc-linux.org/docs/chips/hardball_ers.pdf">ASP</a>
<li><a href="http://ftp.parisc-linux.org/docs/chips/lasi_ers.ps">LASI Core Bus Adapter (including LAN, SCSI, serial, lpt controllers)</a>
<li><a href="http://ftp.parisc-linux.org/docs/chips/dino_ers.ps">Dino PCI bridge</a>,
and <a href="http://ftp.parisc-linux.org/docs/chips/Dino_3_1_Errata.html">Errata</a>
<li><a href="http://ftp.parisc-linux.org/docs/chips/elroy_ers.ps">Elroy ERS (Edited for Open Source)</a>
<li>Astro
<a href="http://ftp.parisc-linux.org/docs/chips/astro_intro.ps">Overview</a>,
<a href="http://ftp.parisc-linux.org/docs/chips/astro_errors.ps">Error handling</a>,
<a href="http://ftp.parisc-linux.org/docs/chips/astro_ioc.ps">R2I Operations</a>,
<a href="http://ftp.parisc-linux.org/docs/chips/astro_regmap.ps">Registers Map</a>,
<a href="http://ftp.parisc-linux.org/docs/chips/astro_runway.ps">Runway Interface</a>,
<a href="http://ftp.parisc-linux.org/docs/chips/astro_sysmap.ps">System Memory Map</a>
</ol>
<li><a href="http://ftp.parisc-linux.org/docs/arch/sti.pdf">Stinger
graphics</a>
<li><a href="http://www.lsi.com/DistributionSystem/AssetDocument/files/docs/techdocs/storage_stand_prod/SCSIControllers/875_4_2.pdf">
LSI 53C875 SCSI I/O Processor</a>
<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>
<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.