Alpha Console Firmware
Console firmware is stored in a flash ROM and started when an Alpha
system is powered up or reset. There are two different console
specifications used on Alpha systems, and hence two classes of console
firmware available:
SRM console, based on the Alpha Console Subsystem
specification, which provides an operating environment for OpenVMS, Tru64
UNIX, and Linux operating systems.
ARC, AlphaBIOS, or ARCSBIOS console, based on the
Advanced RISC Computing (ARC) specification, which provides an operating
environment for Windows NT.
From the user's perspective, the most important difference between SRM
and ARC is that the choice of console constrains the possible
disk-partitioning scheme for the hard disk which you wish to boot off
of.
ARC requires that you use an MS-DOS partition table (as created by
cfdisk) for the boot disk. Therefore MS-DOS partition
tables are the ``native'' partition format when booting from ARC. In
fact, since AlphaBIOS contains a disk partitioning utility, you may
prefer to partition your disks from the firmware menus before
installing Linux.
Conversely, SRM is incompatible with MS-DOS partition tables.
Specifically, the bootsector format required by the Console
Subsystem Specification conflicts with the placement of the DOS
partition table. Since Tru64 Unix uses the BSD disklabel format,
this is the ``native'' partition format for SRM installations.
Because GNU/Linux is the only operating system on Alpha that can be
booted from both console types, the choice will also depend on what
other operating systems you wish to run on the same machine. All
other Unix-like operating systems (Tru64 Unix, FreeBSD, OpenBSD, and
NetBSD) and OpenVMS can only boot from SRM, whereas Windows NT can
only boot from ARC.
The following table summarizes available and supported system
type/console combinations (see for the
system type names). The word `ARC' below denotes any of the
ARC-compliant consoles.
System Type
Console Type Supported
alcor
ARC or SRM
avanti
ARC or SRM
book1
SRM only
cabriolet
ARC or SRM
dp264
SRM only
eb164
ARC or SRM
eb64p
ARC or SRM
eb66
ARC or SRM
eb66p
ARC or SRM
jensen
SRM only
lx164
ARC or SRM
miata
ARC or SRM
mikasa
ARC or SRM
mikasa-p
SRM only
nautilus
ARC only (see motherboard manual)
noname
ARC or SRM
noritake
SRM only
noritake-p
SRM only
pc164
ARC or SRM
rawhide
SRM only
ruffian
ARC only
sable
SRM only
sable-g
SRM only
sx164
ARC or SRM
takara
ARC or SRM
xl
ARC only
xlt
ARC or SRM
Generally, none of these consoles can boot Linux directly, so the
assistance of an intermediary bootloader is required. There are two
mainstream Linux loaders: MILO and aboot.
MILO is itself a console, which replaces ARC or SRM in
memory. MILO can be booted from both ARC and SRM and is
the only way to bootstrap Linux from the ARC console.
MILO is platform-specific (a different MILO
is needed for each system type) and exist only for those systems, for
which ARC support is shown in the table above. See also the
(unfortunately outdated)
MILO HOWTO.
aboot is a small, platform-independent bootloader, which
runs from SRM only. See the (also unfortunately outdated) SRM HOWTO for more information on
aboot.
Thus, three scenarios are generally possible, depending on the
system's console firmware and whether or not MILO is
available:
SRM -> aboot
SRM -> MILO
ARC -> MILO
The UP1000 motherboard (subarchitecture name `nautilus') from Alpha
Processor, Inc. is different from all the others, in that it uses an
API-specific bootloader that runs under AlphaBIOS firmware.
Because MILO is not available for any of the Alpha
systems currently in production (as of February 2000), and because it
is no longer necessary to buy an OpenVMS or Tru64 Unix license to have
SRM firmware on your older Alpha, it is recommended that you use SRM and
aboot on new installations of GNU/Linux, unless you wish
to dual-boot with Windows NT.
The majority of AlphaServers and all current server and workstation
products contain both SRM and AlphaBIOS in their firmware. For
"half-flash" machines such as the various evaluation boards, it is
possible to switch from one version to another by reflashing the
firmware. Also, once SRM is installed, it is possible to run
ARC/AlphaBIOS from a floppy disk (using the arc
command). For the
reasons mentioned above, we recommend switching to SRM before
installing &debian;.
As on other architectures, you should install the newest available
revision of the firmware Except on Jensen, where
Linux is not supported on firmware versions newer than 1.7 - see
for more
information before installing &debian;. For
Alpha, firmware updates can be obtained from
Alpha Firmware Updates.
Booting with TFTP
In SRM, Ethernet interfaces are named with the ewa
prefix, and will be listed in the output of the show dev command,
like this (edited slightly):
>>> show dev
ewa0.0.0.9.0 EWA0 08-00-2B-86-98-65
ewb0.0.0.11.0 EWB0 08-00-2B-86-98-54
ewc0.0.0.2002.0 EWC0 00-06-2B-01-32-B0
You first need to set the boot protocol:
>>> set ewa0_protocol bootp
Then check the medium type is correct:
>>> set ewa0_mode mode
You can get a listing of valid modes with >>>set ewa0_mode.
Then, to boot from the first Ethernet interface, you would type:
>>> boot ewa0
If you wish to use a serial console, you must
pass the console= parameter to the kernel.
This can be done using the -flags argument to
the SRM boot command. The serial ports are
named the same as their corresponding files in
/dev. For example, to boot from
ewa0 and use a console on the first serial
port, you would type:
>>> boot ewa0 -flags console=ttyS0
Booting from CD-ROM with the SRM Console
Type
>>> boot xxxx -flags 0
where xxxx is your CD-ROM drive in SRM notation.
Booting from CD-ROM with the ARC or AlphaBIOS Console
To boot a CD-ROM from the ARC console, find your sub-architecture code
name (see ), then enter
\milo\linload.exe as the boot loader and
\milo\subarch (where
subarch is the proper subarchitecture name)
as the OS Path in the `OS Selection Setup' menu. Ruffians make an
exception: You need to use \milo\ldmilo.exe as
boot loader.
Booting from Floppies with the SRM Console
At the SRM prompt (>>>), issue the following
command:
>>> boot dva0 -flags 0
possibly replacing dva0 with the actual device
name. Usually, dva0 is the floppy; type
>>> show dev
to see the list of devices (e.g., if you want to boot from a CD).
Note that if you are booting via MILO, -flags argument
is ignored, so you can just type boot dva0.
If everything works OK, you will eventually see the Linux kernel boot.
If you want to specify kernel parameters when booting via
aboot, use the following command:
>>> boot dva0 -file linux.bin.gz -flags "root=/dev/fd0 load_ramdisk=1 arguments"
(typed on one line), substituting, if necessary, the actual SRM boot
device name for dva0, the Linux boot device name for
fd0, and the desired kernel parameters for
arguments.
If you want to specify kernel parameters when booting via
MILO, you will have to interrupt bootstrap once you get
into MILO. See .
Booting from Floppies with the ARC or AlphaBIOS Console
In the OS Selection menu, set linload.exe as the boot
loader, and milo as the OS Path. Bootstrap using the
newly created entry.
Booting from Floppies with the APB Boot Loader (UP1000)
To boot on this platform, run \apb\apb.exe from the
`Utility/Run Maintenance Program' menu, and type
boot debian_install
at the APB prompt.
Booting with MILO
MILO contained on the bootstrap media is configured to proceed straight
to Linux automatically. Should you wish to intervene, all you need is to
press space during MILO countdown.
If you want to specify all the bits explicitly (for example, to supply
additional parameters), you can use a command like this:
MILO> boot fd0:linux.bin.gz root=/dev/fd0 load_ramdisk=1
If you are booting from something other than a floppy, substitute
fd0 in the above example with the appropriate device name
in Linux notation. The help command would give you a brief
MILO command reference.