Here are some frequently asked questions (and answers) specific to OpenBSD/hp300.

OpenBSD/hp300 Frequently Asked Questions

Boot ROM Information

Serial Port Information

Other sources of information


OpenBSD/hp300 Frequently Asked Questions


Can OpenBSD/hp300 boot across the network? (top)

HP 9000/300-series workstations support network booting with Boot ROM Revision B or later. (This includes any Boot ROM with a numeric revision). The HP Boot ROM uses the HP Remote Maintainance Protocol to download the boot code from the server. The server must run a daemon capable of responding to HP RMP boot requests, rbootd(8).

To set up your OpenBSD/hp300 workstation, follow the diskless(8) man page.

What TERM type is needed for the console? (top)

If you're using a local console, and you're running csh or tcsh, you'll need to make sure you run:
setenv TERM hp300h
Otherwise many things won't work, including vi.

What is the situation with X11 on the hp300? (top)

We currently have all X11R6 clients, with an X11R5 server. The standard OpenBSD distribution includes an old BSD 4.4 Xserver which is buggy and slow. If you wish to instead use the HP-UX 9.10 X11R5 server, Michael Wolfson has more details.

What does 'UNEXPECTED USE OF FFFFFFC4' mean? (top)

This is the output of one of a set of temporary, informational only, exception handlers installed by the Boot ROM before an OS has been loaded. The address printed varies depending on the type of exception. The most likely cause here is trying to boot a kernel that is incompatible with the hardware. You will get something like this, for example, if you attempt to boot an HP-UX 7.0 or earlier kernel on a 68040 machine (which requires at least 7.05). If you're going to install OpenBSD, you probably don't need to worry about this message, though it is possible (but unlikely) that it indicates hardware trouble or a corrupt bootloader.

When will HP stop supporting the hp300/400? (top)

Motorola 68K-based HP-UX entered 'support-life' on October 1, 1997 and will continue until October 1, 2002, while 'support-life' began for HP/Apollo Domain on March 1, 1997, and will continue until January 1, 2001. There's a brief page on HP's website about this. HP still sells HP-UX 9.10 under the guise of a Y2K upgrade kit.

Anyone can browse or download patches from HP's site without requiring a support contract. (Not that any of this matters to OpenBSD/hp300 users of course)


Boot ROM Information


What commands does the HP Boot ROM understand? (top)

All the early hp300 Boot ROMs are very primitive and only allow a few simple operations. You can only interact with it after it is first powered on -- if you reboot the machine, it will ignore anything you type and start loading the same OS you previously booted.

At any time after it recognizes the keyboard, while it is doing its self test or searching for a bootable system, you can hit reset to return it to a cold-boot configuration. On HIL keybaords, this is <control>-<shift>-break, where break is the key in the upper left (where escape is on sane keyboards). There is no equivalent over serial terminal -- you'll need to power-cycle your machine.

After it beeps (i.e. recognizes the HIL keyboard), press <return> twice to get the list of bootable devices. To perform simple hardware checks, hit <control>-C before it starts booting an OS. You can then type T to perform an extended self test or L to perform the extended self test infinitely until it finds a fatal error or L is typed again.

The newer HP Boot ROM, present on Series 400 machines and some of the later 300s (345, 375, 380, 382, 385) is capable of a little bit more. To select which device to boot from, press <return> once, after it beeps twice (i.e. recognizes the HIL keyboard). To get to a configuration and test menu, press:

   C <return>
This will allow you to configure interrupt levels, select codes, and serial console properties. You can also hit <control>-C to get to a menu of extended tests with several fancy options.

For more information, Michael Wolfson has scanned in parts of the HP Apollo 9000 Series 400 HP-UX Owner's Guide, which has some good information on this topic.

What order does the Boot ROM use to search for bootable devices? (top)

From the Configuration Reference Manual, 98561-90020:

Revision A Boot ROM Specifications

The boot ROM can load a ROM system or a file from a LIF or SRM "SYSTEM" type file having a name of the form SYSa, where "a" is typically an ASCII letter, but may be any character legal in a file name.

ROM systems are assigned a single letter ID (only "B", for BASIC, is presently supported on Series 300).

All system files found are assigned an ID of the form "nna", where "a" is either the same letter "a" mentioned above (if an ASCII letter), or "Z" (if not an ASCII letter). "nn" is a number of the form " 1" to "99" denoting the order of occurence of systems which result in the same ID letter "a". The range of system IDs is " 1A" to "99Z".

The boot ROM loads the first system found unless characters (other than that system's ID) are typed on the boot control keyboard (see below). The search order used by the boot ROM is:

Revision B and later also support booting over the network, using a 98643 card or built-in ethernet. For older systems, the best choice is to make your boot drive on HPIB at address 0. Remember, you'll need to capitalize the letters.

Newer Boot ROM Search Order

The newer machines (Models 345, 375, 380, 382, 385, and Series 400) have a different boot order. From HP Apollo 9000 Series 400 HP-UX Owner's Guide, A1630-90006:

The Scan for Systems selection searches mass storage devices for an operating system to boot. The first mass storage device found with an HP-UX Compatible operating system on it boots. Mass storage devices are searched by the priority shown in this table.

Priority Level Device Select Code Bus Address Unit Number
1 SCSI 0-31 7-5 0
2 HP-IB 0-31 7-5 0
3 SRM 14 N/A N/A
4 LAN 21 N/A N/A
5 Bubble RAM 30 N/A N/A
6 EEPROM N/A N/A 0
7 SCSI 0-31 4-0 0
8 HP-IB 0-31 4-0 0
9 SRM Other than 14 N/A N/A
10 LAN Other than 21 N/A N/A
11 Bubble RAM Other than 30 N/A N/A
12 EEPROM Other than 0 N/A 0

So, for these newer systems, your best bet is to make your boot drive a SCSI drive at address 6 (7 is the system controller on the motherboard).

It is also possible to configure the Boot ROM to default to a specific device from the configuration menu.

Switching your Series 400 machine from Domain to "HP-UX Compatible Boot Mode" (top)

This step is necessary, since OpenBSD can only boot a Series 400 machine when it's set up in "HP-UX Compatible Boot Mode". If, when you power on your machine, it does not present a menu as follows, then you need to follow the instructions below:
Copyright 1990,                         
Hewlett-Packard Company.                
All Rights Reserved.                    
                                        
BOOTROM  Series 400  Rev. 1.1           
MD12 REV 1.2 1990/08/07.14:27:08        
MC68030 Processor                       
MC68882 Coprocessor                     
Configuration EEPROM                    
Utility Chip at 41                      
HP-HIL.Keyboard
[...]
First, you'll need either a Domain keyboard or a HIL keyboard (the Boot ROM knows how to use either, even if OpenBSD doesn't yet). Now, put your machine into "service mode". For a 4XXs, there's a toggle switch on the back of the machine (near the top). For a 4XXt or 4XXdl, there's a green button on the front, behind the silly door. For a 425e, there's a toggle switch on the back of the machine (in the middle). Once you're in "service mode", the other green LED will light up. Reset the machine. You may then need to hit return to get the Domain boot prompt. At that prompt, you can type H to get a list of available commands. You need to type the following things to convert to HP-UX mode:
CF
2
2
P
E
This is the full procedure captured from a serial console.

Be sure to turn off "service mode" when you're done. I found it prevented me from selecting which device I wanted to boot from.

Where could I get a more recent Boot ROM for my 400s or 400t? (top)

Michael Wolfson has images of the HP 425/433 Boot ROM in HP-UX mode. This is necessary when upgrading a 400 to a 425/433

See The fatmac HP9000/300 guide for instructions on upgrading.


Serial Port Information


What are the different types of serial ports, and how do I access them? (top)

device name location device file max speed hardware handshaking FIFO serial console comments
dca0 built-in /dev/tty0 19200 no no DIP switches
non-null cable
for 318, 319, 320, 330, 340, 350, 360, 362, 370
located on Human/System Interface board
dca0 built-in /dev/tty0 38400 yes yes config Boot ROM for 345, 375, 380, 382, 385, 400 Series (except 425e)
located on motherboard
dcaN 98644A DIO-I card /dev/ttyN 19200 yes no DIP switches hardware handshaking only for transmit
dcaN 98626A DIO-I card /dev/ttyN 19200 yes no DIP switches hardware handshaking only for transmit
dclN 98628A DIO-I card /dev/ttyN 19200 yes yes
256 bytes
jumper weird centronics connector goes to normal db25
apci0
apci1
built-in /dev/ttya0
/dev/ttya1
19200 no no no for 400 Series machines (except 425e), requires break-out cable
apci0
apci1
apci2
built-in /dev/ttya0
/dev/ttya1
/dev/ttya2
19200 no no config Boot ROM for 425e, apci0 supports serial console, apci1 and apci2 require break-out cable
dcmN 98642A DIO-I card /dev/tty0[0-3] 19200 yes yes
128/16 bytes
DIP switches Only port 0 has flow control
Only port 1 does console
Uses RJ-11 jacks
dcmN
dcmN+1
98638 DIO-II card /dev/tty0[0-3]
/dev/tty[4-7]
19200 yes yes
127/16 bytes
no Appears to kernel as two 98642 boards

Setting up a serial console on a 98561, 98562, 98626, 98628, 98642, or 98644 (top)

Turn off power to your system before removing any cards. Remove the card with the serial interface.

Now, reinsert the card and power on your machine. All console messages will be sent over the serial port at 9600 bps, 8 bits, no parity, 1 stop bit. Theoretically, you should be using a null-modem cable, but I found that for my 98562, I needed a non-null modem cable.

Setting up serial console on a Model 340 (top)

Turn off power to your system
There are four DIP switches visible through the rear panel
Flip the third switch from the left to one
Turn on your system

Now, all console messages will be sent over the serial port at 9600 bps, 8 bits, no parity, 1 stop bit.

Setting up serial console on a Series 400 machine or a 345,375, 380, 382, or 385 (top)

Wait until your system beeps twice (this is to let you know it's recognized the keyboard). Type C<return> and wait until the configuration menu shows up. Then type in the following set of commands:
1
5
3
R
X
N

This is the full procedure captured from a serial console on my 400s. It may be slightly different for the 300 series machines (345, 375, 380, 382, 385).

Now, your machine will reset and then send all console messages over the serial port at 9600 bps, 8 bits, no parity, 1 stop bit. Use a null-modem cable.

If you want to convert from serial console to monitor/keyboard console, follow the same procedure, except type L instead of R.

You may also temporarily override this setting by typing L<return> or R<return> after your system beeps twice and recognizes the keyboard. This will work even if you have a Domain keyboard.

Since the hardware takes care of this console, you do not add an entry for the console in /etc/ttys. That would be bad.

How do I build the cable to get at the hidden serial ports on a Series 400 machine? (top)

Build the funky cable. Otherwise, just using a normal DB25 serial cable will work fine if you only want one serial port.


OpenBSD/hp300 www@openbsd.org
$OpenBSD: hp300faq.html,v 1.6 1999/12/19 15:58:19 downsj Exp $