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.
A mailing list dedicated to the OpenBSD/hppa port is available at
To join the OpenBSD/hppa mailing list, send a message body of "subscribe
hppa" to firstname.lastname@example.org.
Please be sure to check our mailing list policy before
The current port maintainer is
Mark Kettenis (email@example.com).
Others are definitely welcome to contribute!
Table of contents
This project was started in those days when the only
open source operating systems for HP PA-RISC computers were
These two sources were a major supply of information and
code for initial development of the OpenBSD/hppa port.
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
Later on, Hewlett-Packard decided to sponsor a
Linux 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.
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.
For a system component and device driver listing for this architecture, see
- cpu(4) support for the 7000,
7100, 7100LC, 7150, 7200, 7300LC, 8000, 8200, 8500, 8600, 8700 processors
found on the following systems:
- PA7000-based: 705, 710, 720, 730, 750
- PA7100-based: 715/33, 715/50, 715/75, 725/50, 725/75, 735/100, 742i, 745i, 747i, 755/100
- PA7100LC-based: 712, 715/64, 715/80, 715/100, 715/100XC, 725/64, 725/100, 743i, 748i, SAIC Galaxy 1100
- PA7150-based: 735/125, 755/125
- PA7300LC-based: 744, 745, 748, A180[C], B132L[+], B160L, B180L+, C132L, C160L, Dx20, Dx30, RDI PrecisionBook (C160L)
- PA7200-based: C100, C110, J200, J210, J210XC, Kx00, Kx10, Kx20
- PA8000-based (in 32-bit mode): C160, C180, J280, J282
- PA8200-based (in 32-bit mode): C200, C240, J2240
- PA8500-based (in 32-bit mode): B1000, B2000, C360, C3000, J5000, J7000
- PA8600-based (in 32-bit mode): B2600, C3600, J5600, J6000, J7600
- PA8700-based (in 32-bit mode): C3650, C3700, C3750, J6700, J6750
- mem(4) memory controllers for up to 2GB of memory.
- io(4) Bus/IO controllers and bridges, including:
- dino(4) Dino/Cujo or elroy(4)) Elroy PCI host bridges providing pci(4) PCI busses, supporting most pci(4) cards.
- ppb(4) standard PCI-PCI bridges, including PCI expansion backplanes.
- cbb(4) YENTA-compatible PCI-CardBus bridges supporting some cardbus(4) and pcmcia(4) cards, on some models.
on-board SCSI controllers.
- pciide(4) IDE drive controller supporting wd(4) and cd(4) drives.
- dc(4) on-board Digital 10/100Mbit ethernet.
- ohci(4) on-board USB controller supporting most usb(4) devices.
- sti(4) SGC/GSC/PCI graphics controllers.
- com(4) on-board ns16550 serial ports.
- lpt(4) on-board parallel port.
- harmony(4) on-board CS4215/AD1849 audio.
- hilkbd(4) HIL keyboards.
- hilms(4) HIL mice and graphics tablet.
- hilid(4) HIL ID modules.
- pckbd(4) PS/2 keyboards.
- pms(4) PS/2 mice.
- power(4) soft power button as available on some models.
- lcd(4) front-panel display on some models.
- Battery-backed real time clock.
Unsupported systems and devices
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.
- PA7100LC-based: Dx00, Dx10
- PA7200-based: Dx50, Dx60
- PA8000-based(in 32-bit mode): Dx70, Dx80/R380, Kx50/Kx60
- PA8200-based(in 32-bit mode): D390/R390, Kx70/Kx80
- HP 9000 E-Class (with limited I/O)
- Most Hitachi PA-RISC workstations and servers
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).
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
and will only run the
- HP 3000 900
- HP 9000 8x7 (F, G, H, I-Class)
- PA8500-based: A400/rp24x0, L1000/L2000
- PA8600-based: A400/rp2450, L3000/rp5400
- PA8700-based: A500/rp2470, N4000/rp74x0, rp8400
- PA8800-based: A500-9x, C8000, rp3410, rp3440, rp4410, rp4440, rp7420, rp84x0
- PA8900-based: C8000, rp3410, rp3440, rp4410, rp4440, rp7420, rp84x0
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.
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.
This list is not meant to be exhaustive either, but sums up the most commonly
encountered devices on hppa machines.
- dino(4) Dino in card mode.
- pcmcia(4) PCMCIA adapters.
- mongoose(4) EISA bus adapter.
- VME controller
- any HP-PB devices
- On-board floppy controller
- Dino's PS/2 keyboard and mouse controller
- Power management on PrecisionBook
Getting and installing
The latest supported OpenBSD/hppa release is
Here are the
OpenBSD/hppa 5.4 installation instructions
Snapshots are made available from time to time, in
as well as in a few
Here are the
OpenBSD/hppa snapshot installation instructions
Projects (in no particular order):
Most of the following documents have been released by Hewlett-Packard for
the PA-RISC Linux project.
- HP PA-RISC CPUs
- PA7100LC CPU ERS
- PA7300LC CPU ERS
- Processor Dependent Code/I/O Dependent Code Interface
(selected chapters from "PA-RISC I/O Architecture Specification")
- PDC 1.1
- IODC 1.1
- Version and Identification Number Allocation
- Memory Data Formats 2.0
- PDC Entry Points 2.0
- PDC Procedures 2.0
- OS Interface 2.0
- Bus controllers/bridges/adaptors
- LASI Core Bus Adapter (including LAN, SCSI, serial, lpt controllers)
- Dino PCI bridge,
- Elroy ERS (Edited for Open Source)
System Memory Map
LSI 53C875 SCSI I/O Processor
Of course, no hppa page, be it OpenBSD or not, could pretend to be serious
without linking to the essential OpenPA