Contents

Before you begin

Do yourself a favor, and get a BiosSavior before you begin. We bought ours from http://www.paragonca.com. There are different models, make sure you order the one you need. It depends on the size and type of the ROM chip on your board. Our S2881 board has a 4Mbit PLCC chip:

While LinuxBIOS replaces the functions of the proprietary bios, it does NOT replace the VGA bios. If you want VGA on your linuxBIOS'd machine (not strictly necessary for servers), you will need to extract the VGA bios and concatenate it with the LinuxBIOS image, before burning it to your ROM. See below for details.

Payload

If you want to boot from the network or from a SATA drive, you will need to use Etherboot. If you want to boot from an IDE drive, you can use FILO. The rest of this document assumes you want to boot from SATA.

Building the payload

Since the S2881 comes with a SATA controller, we need to build Etherboot.

1. Download the latest version from http://www.etherboot.org. At the time of writing, that is Etherboot 5.4.1.
2. Configure it as explained here: http://www.linuxbios.org/index.php/Etherboot
3. Version 5.4.1 adds PXE support. which is not compatible with the LinuxBIOS/FILO code included in Etherboot. You will need to disable it by removing this line from src/Config:

CFLAGS+= -DPXE_IMAGE -DPXE_EXPORT

4. Etherboot has an (optional) boot prompt that allows you the choice of a network or disk boot. We always want to book from disk, so make sure you set ASK_BOOT to -1, which disables the prompt:

CFLAGS+= -DASK_BOOT=-1

5. However, currently (2006-04-23) Etherboot/FILO needs a bit of time to detect SATA drives (but only after a cold boot). It seems at least 3 extra seconds are required, so to be safe update the FILO boot prompt delay (where you can choose different boot images) to 5 seconds in src/filo/Config.lb:

AUTOBOOT_DELAY = 5

Now; before we build Etherboot, let's think about the kernel we want to boot first.

If you want VGA support, make sure you burn the final_linuxbios.rom image!

Booting LinuxBIOS

You now need to 'halt' the machine. A soft reset won't work the first time you boot from the proprietary BIOS into LinuxBIOS.

Since we set up serial output in the LinuxBIOS configuration files above, you will want to hook up a serial console (or a copy of minicom or the like) to see what the box is doing while starting up. Keep your eyes on the screen after hitting the power button - LinuxBIOS will be up and running way before you expect it!

If you have problems, don't despair. Power down the box, switch the biossavior to 'ORG' and boot in the proprietary BIOS. Just don't forget to switch the biossavior back to the 'RD1' position before flashing the BIOS!

See what went wrong, and subscribe and post to the friendly and helpful mailing list if you can't figure it out by yourself.