                    FreeBSD 4.4-RELEASE alpha Hardware Notes

  The FreeBSD Documentation Project

   Copyright (c) 2000, 2001 by The FreeBSD Documentation Project

     ----------------------------------------------------------------------

     ----------------------------------------------------------------------

                                 1 Introduction

   This document contains the hardware compatability notes for FreeBSD
   4.4-RELEASE on the alpha hardware platform. It lists devices known to work
   on this platform, as well as some notes on boot-time kernel customization
   that may be useful when attempting to configure support for new devices.

     Note: This document includes information specific to the alpha hardware
     platform. Versions of the hardware compatability notes for other
     architectures will differ in some details.

     ----------------------------------------------------------------------

                    2 Supported processors and motherboards

   $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml,v
   1.13.2.10 2001/08/30 13:20:59 wilko Exp $

   This section is maintained by Wilko Bulte <wilko@FreeBSD.org>.

   Additions, corrections and constructive criticism are invited. In
   particular information on system quirks is more than welcome.

     ----------------------------------------------------------------------

2.1 Overview

   This document tries to provide a starting point for those who want to run
   FreeBSD on an Alpha-based machine. It is aimed at providing background
   information on the various hardware designs. It is not a replacement for
   the systems manuals.

   The information is structured as follows:

     * general hardware requirements to run FreeBSD on alpha;

     * system specific information for each of the systems/boards supported
       by FreeBSD;

     * information on expansion boards for FreeBSD, including things that
       differ from what is in the generic supported hardware list.

     Note: You will see references to DEC, Digital Equipment Corporation and
     Compaq used more or less interchangeably. Now that Compaq has acquired
     Digital Equipment it would be more correct to refer to Compaq only.
     Given the fact that you will see the mix of names everywhere I don't
     bother.

     Note: SRM commands will be in UPPER CASE. Lower case input is also
     acceptible to SRM. Upper case is used for clarity.

     ----------------------------------------------------------------------

2.2 In general, what do you need to run FreeBSD on an Alpha?

   Obviously you will need an Alpha machine that FreeBSD knows about. Alpha
   machines are NOT like PCs. There are considerable differences between the
   various core logic chip sets and mainboard designs. This means that a
   kernel needs to know the intimate details of a particular machine before
   it can run on it. Throwing some odd GENERIC kernel at unknown hardware is
   almost guaranteed to fail miserably.

   For a machine even to be considered for FreeBSD use please make sure it
   has the SRM console firmware installed. Or at least make sure that SRM
   console firmware is available for the particular machine type. If FreeBSD
   does not currently support your machine type, there is a good chance that
   this will change at some point in time, assuming SRM is available. All
   bets are off when SRM console firmware is not available.

   Machines with the ARC or AlphaBIOS console firmware were intended for
   WindowsNT. Some have SRM console firmware available in the system ROMs
   which you only have to select (via an ARC or AlphaBIOS menu). In other
   cases you will have to re-flash the ROMs with SRM code. Check on
   http://ftp.digital.com/pub/DEC/Alpha/firmware to see what is available for
   your particular system. In any case: no SRM means no FreeBSD (or NetBSD,
   OpenBSD, Tru64 Unix or OpenVMS for that matter). With the demise of
   WindowsNT/alpha a lot of former NT boxes are sold on the second hand
   market. They have little or no trade-in value when they are NT-only from
   the console firmware perspective. So, be suspicious if the price appears
   too good.

   Known non-SRM machines are:

     * Digital XL series

     * Digital XLT series

     * Samsung PC164UX

     * Samsung 164B

   To complicate things a bit further: Digital used to have so called
   ``white-box'' Alpha machines destined as NT-only and ``blue-box'' Alpha
   machines destined for OpenVMS and Digital Unix. These names are based on
   the color of the cabinets, ``FrostWhite'' and ``TopGunBlue'' respectively.
   Although you could put the SRM console firmware on a whitebox, OpenVMS and
   Digital Unix will refuse to boot on them. FreeBSD in post-4.0-RELEASE will
   run on both the white and the blue-box variants. Before someone asks: the
   white ones had a rather different (read: cheaper) Digital price tag.

   As part of the SRM you will get the so called OSF/1 PAL code (OSF/1 being
   the initial name of Digital's UNIX offering on Alpha). The PAL code can be
   thought of as a software abstraction layer between the hardware and the
   operating system. It uses normal CPU instruction plus a handful of
   privileged instructions specific for PAL use. PAL is not microcode. The
   ARC console firmware contains a different PAL code, geared towards WinNT
   and in no way suitable for use by FreeBSD (or more generic: Unix or
   OpenVMS). Before someone asks: Linux/alpha brings its own PAL code,
   allowing it to boot on ARC and AlphaBIOS. There are various reasons why
   this is not a very good idea in the eyes of the *BSD folks. I don't want
   to go into details here. If you are interested in the gory details search
   the FreeBSD and NetBSD web sites.

   There is another pitfall ahead: you will need a disk adapter that the SRM
   console firmware recognizes in order to be able to boot from a disk. What
   is acceptable to SRM as a boot adapter is unfortunately highly system and
   SRM version dependent. For older PCI based machines it means you will need
   either a NCR/Symbios 53C810 based adapter, or a Qlogic 1020/1040 based
   adapter. Some machines come with a SCSI chip embedded on the mainboard.
   Newer machine designs and SRM versions will be able to work with more
   modern SCSI chips/adapters. Check out the machine specific info below.
   Please note that the rest of this discussion only refers to Symbios chips,
   this is meant to include the older chips that still have NCR stamped on
   them. Symbios bought NCR sometime.

   The problem might bite those who have machines that started their lives as
   WindowsNT boxes. The ARC or AlphaBIOS knows about other adapter types that
   it can boot from than the SRM. For example you can boot from an Adaptec
   2940UW with ARC/AlphaBios but (generally) not with SRM. Some newer machine
   types have introduced Adaptec boot support. Please consult the machine
   specific section for details.

   Most adapters that cannot be booted from work fine for data-only disks.
   The differences between SRM and ARC could also get you pre-packaged IDE
   CDROMs and hard drives in some (former WindowsNT) systems. SRM versions
   exist (depends on the machine type) that can boot from IDE disks and
   CDROMs. Check the machine specific section for details.

   FreeBSD 4.0 and later can be booted from the distribution CDROM. Earlier
   versions needed booting from a 2 disk floppy set.

   In order to be bootable the root partition (partition a) must be at offset
   0 of the disk drive. This means you have to use the installer's
   partitioning menu and start with assigning partiton a at offset 0 to the
   root partition. Subsequently layout the rest of the partitions to your
   liking. If you do not adhere to this rule the install will proceed just
   fine, but the system will not be bootable from the freshly installed disk.

   If you don't have/want a local disk drive you can boot via the Ethernet.
   This assumes an Ethernet adapter/chip that is recognized by the SRM
   console. Generally speaking this boils down to either a 21040 or 21142 or
   21143 based Ethernet interface. Older machines or SRM versions may not
   recognize the 21142 / 21143 Fast Ethernet chips, you are then limited to
   using 10Mbit Ethernet for net booting those machines. Non-DEC cards based
   on said chips will generally (but are not guaranteed to) work. Note that
   Intel took over the 21x4x chips when it bought Digital Semiconductor. So
   you might see an Intel logo on them these days. Recent machine designs
   have SRM support for Intel 8255x Ethernet chips.

   Alpha machines can be run with SRM on a graphics console or on a serial
   console. ARC can also be run on a serial consoles if need be. VT100
   emulation with 8 bit controls should at least allow you to switch from
   ARC/AlphaBIOS to SRM mode without having to install a graphics card first.

   If you want to run your Alpha machine without a monitor/graphics card just
   don't connect a keyboard/mouse to the machine. Instead hook up a serial
   terminal[emulator] to serial port #1. The SRM will talk 9600N81 to you.
   This can also be really practical for debugging purposes. Beware:
   some/most (?) SRMs will also present you with a console prompt at serial
   port #2. The booting kernel, however, will display the boot messages on
   serial port #1 and will also put the console there. This can be extremely
   confusing.

   Most PCI based Alphas can use ordinary PC-type VGA cards. The SRM contains
   enough smarts to make that work. It does not, however, mean that each and
   every PCI VGA card out on the street will work in an Alpha machine. Things
   like S3 Trio64, Mach64, and Matrox Millennium generally work. Old ET4000
   based ISA cards have also worked for me. But ask around first before
   buying. Please note that TGA-based cards are not currently supported as
   FreeBSD console display cards. Digital ZLXp-xx cards are often found in
   Alpha machines and are TGA based. You will either have to use a serial
   console or another display card.

   Most PCI devices from the PC-world will also work in FreeBSD PCI-based
   machines. Check the /sys/alpha/conf/GENERIC file for the latest word on
   this. Check the appropriate machine type's discussion in case you want to
   use PCI cards that have PCI bridge chips on them. In some cases you might
   encounter problems with PCI cards not handling PCI parity correctly. This
   can lead to panics. PCI parity checking can be disabled using the
   following SRM command:

     >>> SET PCI_PARITY OFF

   This is not a FreeBSD problem, all operating systems running on Alpha
   hardware will need this workaround.

   If your system (also) contains EISA expansion slots you will need to run
   the EISA Configuration Utility (ECU) after you have installed EISA cards
   or after you have upgraded your console firmware.

   For Alpha CPUs you will find multiple generations. The original Alpha
   design is the 21064. It was produced in a chip process called MOS4, chips
   made in this process are nicknamed EV4. Newer CPUs are 21164, 21264 etc.
   You will see designations like EV4S, EV45, EV5, EV56, EV6, EV67. The EVs
   with double digit numbers are slightly improved versions. For example EV45
   has an improved FPU and 16 kByte on-chip separate I & D caches compared to
   the EV4 on which it is based. Rule of thumb: the higher the digit
   immediately following ``EV'' the more desirable (read: faster / more
   modern).

   For memory you want at least 32 Mbytes. I have had FreeBSD run on a 16
   Mbyte system but you will not enjoy that. Kernel build times halved when I
   went to 32 Mbytes. Note that the SRM console steals 2Mbyte from the total
   system memory (and keeps it). For more serious work 64 Mbytes or more are
   recommended.

   While on the subject of memory: pay close attention to the type of memory
   your machine uses. There are very different memory configurations and
   requirements for the various machines.

   Final word: I expect the above to sound a bit daunting to the first-time
   Alpha user. Don't be daunted too much. And do feel free to ask questions
   if something is not clear after reading this document.

     ----------------------------------------------------------------------

2.3 System-specific information

   Below is an overview of the hardware that FreeBSD runs on. This list will
   definitely grow, a look in /sys/alpha/conf/GENERIC can be enlightening.

   Alpha machines are often best known by their project code name. Where
   known these are listed below in parentheses.

     ----------------------------------------------------------------------

  2.3.1 AXPpci33 (``NoName'')

   The NoName is a baby-AT mainboard based on the 21066 LCA (Low Cost Alpha)
   processor. NoName was originally designed for OEM-use. The LCA chip
   includes almost all of the logic to drive a PCI bus and the memory
   subsystem. All of this makes for a low-priced design.

   Due to the limited memory interface the system is not particularly fast in
   case of cache misses. As long as you stay inside the on-chip cache the CPU
   is comparable to a 21064 (first generation Alpha). These boards should be
   very cheap to obtain these days. It is a full-fledged 64 bit CPU, just
   don't expect miracles as far as speed goes.

   Features:

     * 21066 Alpha CPU at 166 MHz or 21066A CPU at 233MHz. 21068 CPUs are
       also possible, but are even slower.

     * on-board Bcache / L2 cache: 0, 256k or 1 Mbyte (uses DIL chips)

     * PS/2 mouse & keyboard port OR 5pin DIN keyboard (2 mainboard models)

     * memory:

          * bus width: 64 bits

          * PS/2 style 72 pin 36 bit Fast Page Mode SIMMs

          * 70ns or better

          * installed in pairs of 2

          * 4 SIMM sockets

          * uses ECC

     * 512kB Flash ROM for the console code.

     * 2 16550A serial ports

     * 1 parallel port

     * floppy interface

     * 1 embedded IDE interface

     * expansion:

          * 3 32 bit PCI slots (1 shared with ISA)

          * 5 ISA slots (1 shared with PCI)

     * embedded Fast SCSI using a Symbios 53C810 chip

   NoNames can either have SRM or ARC console firmware in their Flash ROM.
   The Flash ROM is not big enough to hold both ARC and SRM at the same time
   and allow software selection of alternate console code. But you only need
   SRM anyway.

   Cache for the NoNames are 15 or 20 ns DIL chips. For a 256 kByte cache you
   want to check your junked 486 mainboard. Chips for a 1 Mbyte cache are a
   rarer breed unfortunately. Getting at least a 256kByte cache is
   recommended performance wise. Cache-less they are really slow.

   The NoName mainboard has a PC/AT-standard power connector. It also has a
   power connector for 3.3 Volts. No need to rush out to get a new power
   supply. The 3.3 Volts is only needed in case you run 3.3 Volts PCI
   expansion boards. These are quite rare.

   The IDE interface is supported by FreeBSD and requires a line in the
   kernel configuration file as follows:

     device ata0 at isa? port IO_WD1 irq 14

   The SRM console unfortunately cannot boot from IDE disks. This means you
   will have to use a SCSI disk as the boot device.

   The NoName is somewhat stubborn when it comes to serial consoles. It needs

     >>> SET CONSOLE SERIAL

   before it goes for a serial console. Pulling the keyboard from the machine
   is not sufficient, like it is on most other Alpha models. Going back to a
   graphical console needs

     >>> SET CONSOLE GRAPHICS

   at the serial console.

   There have been reports that you sometimes need to press Control-Alt-Del
   to capture the SRM's attention. I have never seen this myself, but it is
   worth trying if you are greeted by a blank screen after powerup.

   Make sure you use true 36 bit SIMMs, and only FPM (Fast Page Mode) DRAM.
   EDO DRAM or SIMMs with fake parity will not work. The board uses the 4
   extra bits for ECC. 33 bit FPM SIMMs will for the same reason not work.

   Given the choice, get the PS/2-variant mainboard. Apart from giving you a
   mouse port as bonus it is directly supported by Tru64 Unix in case you
   ever want or need to run it. The ``DIN-plug''-variant should work OK for
   FreeBSD.

   The OEM manual is recommended reading.

   The kernel configuration file for a NoName kernel must contain:

     options     DEC_AXPPCI_33          
     cpu EV4

     ----------------------------------------------------------------------

  2.3.2 Universal Desktop Box (UDB or ``Multia'')

     Note: Multia can be either Intel or Alpha CPU based. We assume Alpha
     based ones here for obvious reasons.

   Multia is a small desktop box intended as a sort of personal workstation.
   They come in a considerable number of variations, check closely what you
   get.

   Features:

     * 21066 Alpha CPU at 166 MHz or 21066A CPU at 233MHz

     * on-board Bcache / L2 cache: COAST-like 256 kByte cache module; 233MHz
       models have 512kByte of cache; 166MHz models have soldered-on 256kB
       caches

     * PS/2 mouse & keyboard port

     * memory:

          * bus width: 64 bits

          * PS/2 style 72 pin 36 bit Fast Page Mode SIMMs

          * 70ns or better

          * SIMMs are installed in pairs of 2

          * 4 SIMM sockets

          * uses ECC

     * 2 16550A serial ports

     * 1 parallel port

     * floppy interface

     * Intel 82378ZB PCI to ISA bridge

     * 1 embedded 21040 based 10Mbit Ethernet, AUI and 10base2 connector

     * expansion:

          * 1 32 bit PCI slot

          * 2 PCMCIA slots

     * on-board Crystal CS4231 or AD1848 sound chip

     * embedded Fast SCSI, using a Symbios 53C810[A] chip on the PCI riser
       card

   Multia has enough Flash ROM to store both SRM and ARC code at the same
   time and allow software selection of one of them.

   Multia has only one 32 bit PCI slot for expansion, and it is only suitable
   for a small form factor PCI card. By sacrificing the PCI slot space you
   can mount a 3.5" hard disk drive. Mounting stuff may have come with your
   Multia. Adding a 3.5" disk is not a recommended upgrade due to the limited
   power rating of the power supply and the extremely marginal cooling of the
   system box.

   Multia also has 2 PCMCIA expansion slots. These are currently not
   supported by FreeBSD.

   The CPU might or might not be socketed, check this before considering CPU
   upgrade hacks. The low-end Multias have a soldered-in CPU.

   It comes with a TGA based graphics on-board. TGA is not currently suitable
   for console use with FreeBSD. This means you will have to run Multia using
   a serial console. Note that the boot of the installation disk will appear
   to work fine using the TGA console, but then switches to using the serial
   port. This is even mentioned during by installer (but never read by the
   human doing the install). Your keyboard appears dead from that point on.

   Multia has 2 serial ports but routes both of them to the outside world on
   a single 25 pin sub-D connector. The Multia FAQ explains how to build your
   own Y-cable to allow both ports to be used.

   Although the Multia SRM supports booting from floppy this can be
   problematic. Typically the errors look like:

     *** Soft Error - Error #10 - FDC: Data overrun or underrun

   This is not a FreeBSD problem, it is a SRM problem. The best available
   workaround to install FreeBSD is to boot from a SCSI CDROM.

   There have been reports that you sometimes need to press Control-Alt-Del
   to capture the SRM's attention. I have never seen this myself, but it is
   worth trying when you are greeted by a blank screen after powerup.

   Sound works fine using pcm(4) driver and a line in the kernel
   configuration file as follows for the Crystal CS4231 chip:

     device pcm0 at isa? port 0x530  irq 9 drq 3 flags 0x15

   I have not yet been successful in getting my Multia with the AD1848 to
   play any sound.

   While verifying playback I was reminded of the lack of CPU power of the
   166MHz CPU. MP3 only plays acceptable using 22kHz down-sampling.

   Multias are somewhat notorious for dying of heat strokes. The very compact
   box does not really allow access to cooling air. Please use the Multia on
   its vertical stand, don't put it horizontally (``pizza style''). Replacing
   the fan with something which pushes around more air is really recommended.
   You can also cut one of the wires to the fan speed sensor. Once cut, the
   fan runs at a (loud) full speed. Beware of PCI cards with high power
   consumption. If your system has died you might want to check the
   Multia-Heat-Death pages at the NetBSD Web site for help in reviving it.

   The Intel 82378ZB PCI to ISA bridge enables the use of an IDE disk. This
   requires a line in the kernel configuration file as follows:

     device ata0 at isa? port IO_WD1 irq 14

   The IDE connector pin spacing is thought for 2.5" laptop disks. A 3.5" IDE
   disk would not fit in the case anyway. At least not without sacrificing
   your only PCI slot. The SRM console unfortunately does not know how to
   boot from IDE disks. You will need to use a SCSI disk as the bootdisk.

   In case you want to change the internal hard drive: the internal flat
   cable running from the PCI riser board to the 2.5" hard drive has a finer
   pitch than the standard SCSI flat cables. Otherwise it would not fit on
   the 2.5" drives. There are also riser cards that have a standard-pitch
   SCSI cable attached to it, which will fit an ordinary SCSI disk.

   Again, I recommend against trying to cram a replacement hard disk inside.
   Use the external SCSI connector and put your disk in an external
   enclosure. Multias run hot enough as-is. In most cases you will have the
   external high density 50-pin SCSI connector but some Multia models came
   without disk and may lack the connector. Something to check before buying
   one.

   The kernel configuration file for a Multia kernel must contain:

     options     DEC_AXPPCI_33
     cpu EV4

   Recommended reading on Multia can be found at
   http://www.netbsd.org/Ports/alpha/multiafaq.html or
   http://www.brouhaha.com/~eric/computers/udb.html.

     ----------------------------------------------------------------------

  2.3.3 Personal Workstation (``Miata'')

   The Miata is a small tower machine intended to be put under a desk. There
   are multiple Miata variants. The original Miata is the MX5 model. Because
   it suffers from a number of hardware design flaws a redesign was done,
   yielding the MiataGL. Unfortunately the variants are not easily
   distinguishable at first sight from the outside of the case. An easy check
   is to see if the back of the machine sports two USB connectors. If yes, it
   is a MiataGL. MX5 models tend to be more common in the used system market
   place.

   System designations look like ``Personal Workstation 433a''. Personal
   Workstation, being a bit of a mouthful, is often abbreviated to PWS. This
   means it has a 433 MHz CPU, and started life as a WinNT workstation (the
   trailing ``a''). Systems designated from day 1 to run Tru64 Unix or
   OpenVMS will sport ``433au''. WinNT-Miatas are likely to come
   pre-configured with an IDE CDROM drive. So, in general systems are named
   like PWS[433,500,600]a[u].

   There was also a Miata model with a special CPU cooling system by
   Kryotech. The Kryotech has a special cooling system and is housed in a
   different enclosure.

   Features:

     * 21164A EV56 Alpha CPU at 433, 500 or 600MHz

     * 21174 Core Logic (``Pyxis'') chip set

     * on-board Bcache / L3 cache: 0, 2 or 4 Mbytes (uses a cache module)

     * memory:

          * bus width: 128 bits wide, ECC protected

          * unbuffered 72 bit wide SDRAMs DIMMs, installed in pairs of 2

          * 6 DIMM sockets

          * maximum memory 1.5 GBytes

     * on-board Fast Ethernet:

          * MX5 uses a 21142 or 21143 Ethernet chip, dependent on the version
            of the PCI riser card

          * MiataGL has a 21143 chip

          * the bulkhead can be 10/100 Mbit UTP, or 10 Mbit UTP/BNC

     * 2 on-board [E]IDE disk interfaces, based on the CMD646 (MX5) or the
       Cypress 82C693 (MiataGL)

     * 1 Ultra-Wide SCSI Qlogic 1040 [MiataGL only]

     * 2 64-bit PCI slots

     * 3 32-bit PCI slots (behind a DEC PCI-PCI bridge chip)

     * 3 ISA slots (physically shared with the 32 bit PCI slots, via an Intel
       82378IB PCI to ISA bridge chip)

     * 2 16550A serial port

     * 1 parallel port

     * PS/2 keyboard & mouse port

     * USB interface [MiataGL only]

     * embedded sound based on an ESS1888 chip

   The Miata logic is divided into two printed circuit boards. The lower
   board in the bottom of the machine has the PCI and ISA slots and things
   like the sound chip etc. The top board has the CPU, the Pyxis chip, memory
   etc. Note that MX5 and the MiataGL use a different PCI riser board. This
   means that you cannot just upgrade to a MiataGL CPU board (with the newer
   Pyxis chip) but that you will also need a different riser board.
   Apparently an MX5 riser with a MiataGL CPU board will work but it is
   definitely not a supported or tested configuration. Everything else
   (cabinet, wiring, etc.) is identical for MX5 and MiataGL.

   MX5 has problems with DMA via the 2 64-bit PCI slots when this DMA crosses
   a page boundary. The 32 bit slots don't have this problem because the
   PCI-PCI bridge chip does not allow the offending transfers. The SRM code
   knows about the problem and refuses to start the system if there is a PCI
   card in one of the 64bit slots that it does not know about. Cards that are
   ``known good'' to the SRM are allowed to be used in the 64bit slots.

   If you want to fool the SRM you can type set pci_device_override at the
   SRM prompt. Just don't complain if your data mysteriously gets mangled.

   The complete command is:

     >>> SET PCI_DEVICE_OVERRIDE <vendor_id><device_id>

   For example:

     >>> SET PCI_DEVICE_OVERRIDE 88c15333

   The most radical approach is to use:

     >>> SET PCI_DEVICE_OVERRIDE -1

   This disables PCI ID checking altogether, so that you can install any PCI
   card without its ID getting checked. For this to work you need a
   reasonable current SRM version.

     Important: Do this on your own risk..

   The FreeBSD kernel reports it when it sees a buggy Pyxis chip:

     Sep 16 18:39:43 miata /kernel: cia0: Pyxis, pass 1
     Sep 16 18:39:43 miata /kernel: cia0: extended capabilities: 1<BWEN>
     Sep 16 18:39:43 miata /kernel: cia0: WARNING: Pyxis pass 1 DMA bug; no bets...

   A MiataGL probes as:

     Jan  3 12:22:32 miata /kernel: cia0: Pyxis, pass 1
     Jan  3 12:22:32 miata /kernel: cia0: extended capabilities: 1<BWEN>
     Jan  3 12:22:32 miata /kernel: pcib0: <2117x PCI host bus adapter> on cia0

   MiataGL does not have the DMA problems of the MX5. PCI cards that make the
   MX5 SRM choke when installed in the 64bit slots are accepted without
   problems by the MiataGL SRM.

   The latest mainboard revisions of MX5 contain a hardware workaround for
   the bug. The SRM does not know about the ECO and will complain about
   unknown cards as before. So does the FreeBSD kernel by the way.

   The Miata SRM can boot from IDE CDROM drives. IDE harddisk boot is known
   to work for both MiataGL and MX5 disks, so you can root FreeBSD from an
   IDE disk. Speeds on MX5 are around 14 Mbytes/sec assuming a suitable
   drive. Miata's CMD646 chip will support up to WDMA2 mode as the chip is
   too buggy for use with UDMA.

   Miata MX5s generally use Qlogic 1040 based SCSI adapters. These are
   bootable by the SRM console. Note that Adaptec cards are not bootable by
   the Miata SRM console.

   The MiataGL has a faster PCI-PCI bridge chip on the PCI riser card than
   some of the MX5 riser card versions. Some of the MX5 risers have the same
   chip as the MiataGL. All in all there is a lot of variation.

   Not all VGA cards will work behind the PCI-PCI bridge. This manifests
   itself as no video at all. Workaround is to put the VGA card ``before''
   the bridge, in one of the 64 bit PCI slots.

   Both MX5 and MiataGL have an on-board sound chip, an ESS1888. It emulates
   a SoundBlaster and can be enabled by putting

     device      pcm0
     device      sbc0

   in your kernel configuration file:

   in case your Miata has the optional cache board installed make sure it is
   firmly seated. A slightly loose cache has been observed to cause weird
   crashes (not surprising obviously, but maybe not so obvious when
   troubleshooting). The cache module is identical between MX5 and MiataGL.

   Installing a 2Mb cache module achieves, apart from a 10-15% speed increase
   (based on buildworld elapsed time), a decrease for PCI DMA read bandwidth
   from 64bit PCI cards. A benchmark on a 64-bit Myrinet card resulted in a
   decrease from 149 Mbytes/sec to 115 Mbytes/sec. Something to keep in mind
   when doing really high speed things with 64 bit PCI adapters.

   If you experience SRM errors like

     ERROR: scancode 0xa3 not supported on PCXAL

   after halting FreeBSD you should update your SRM firmware to V7.2-1 or
   later. This SRM version is first available on the Firmware Update CD V5.7,
   or on http://www.compaq.com/ This SRM problem is fixed on both Miata MX5
   and Miata GL.

   USB is supported by FreeBSD 4.1 and later.

   Disconnect the power cord before dismantling the machine, the soft-power
   switch keeps part of the logic powered even when the machine is switched
   off.

   The kernel configuration file for a Miata kernel must contain:

     options     DEC_ST550              
     cpu EV5

     ----------------------------------------------------------------------

  2.3.4 DEC3000 family (the ``Bird'' machines)

   The DEC3000 series were among the first Alpha machines ever produced. They
   are based on an I/O bus called the TurboChannel (TC) bus. These machines
   are built like tanks (watch your back).

   DEC3000 can be subdivided in DEC3000/500-class and DEC3000/300-class. The
   DEC3000/500-class is the early high-end workstation/server Alpha family.
   Servers use serial consoles, workstations have graphics tubes.
   DEC3000/300-class is the lower-cost workstation class.

   DEC3000/500-class are quite fast (considering their age) thanks to the
   good memory design. DEC3000/300 is crippled compared to DEC3000/500
   because of its much narrower memory bus.

   They are called ``Birds'' because their internal DEC code names were bird
   names:

   +------------------------------------------------------------------------+
   | DEC3000/400     | Sandpiper        | 133MHz CPU, desktop               |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/500     | Flamingo         | 150MHz CPU, floor standing        |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/500X    | Hot Pink         | 200MHz CPU, floor standing        |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/600     | Sandpiper+       | 175MHz CPU, desktop               |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/700     | Sandpiper45      | 225MHz CPU, floor standing        |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/800     | Flamingo Ultra   | 200MHz CPU, floor standing        |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/900     | Flamingo45       | 275MHz CPU, floor standing        |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/300     | Pelican          | 150MHz CPU, desktop, 2 TC slots   |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/300X    | Pelican+         | 175MHz CPU, desktop, 2 TC slots   |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/300LX   | Pelican+         | 125MHz CPU, desktop, 2 TC slots   |
   |-----------------+------------------+-----------------------------------|
   | DEC3000/300L    |                  | 100MHz CPU, desktop, no TC slots  |
   +------------------------------------------------------------------------+

   Features:

     * 21064 CPU (100 to 200 MHz) or 21064A CPU (225 to 275 MHz)

     * memory DEC3000/500 class:

          * bus width: 256 bit, with ECC

          * proprietary 100pin SIMMs

          * installed in sets of 8

     * memory DEC3000/300 class:

          * bus width: 64 bit, with ECC

          * PS/2 style 72pin 36 bit FPM SIMMs 70ns or better

          * used in pairs of 2

     * Bcache / L2 cache: varying sizes, 512 kB to 2 Mbyte

     * built-in 10Mbit Ethernet based on a Lance 7990 chip, AUI and UTP

     * one or two SCSI buses based on a NCR53C94 or a NCR53CF94-2 chip

     * 2 serial ports based on Zilog 8530 (one usable as a serial console)

     * embedded ISDN interface

     * on-board 8 bit sound

     * 8 bit graphics on-board or via a TC card (depending on model)

   Currently DEC3000 machines can only be used diskless on FreeBSD. The
   reason for this is that the SCSI drivers needed for the TC SCSI adapters
   were not brought into CAM that the recent FreeBSD versions use. TC option
   cards for single (PMAZ-A) or dual fast SCSI (PMAZC-AA) are also available.
   These cards currently have no drivers on FreeBSD either.

   

   DEC3000/300 has 5 MBytes/sec SCSI on-board. This bus is used for both
   internal and external devices. DEC3000/500 has 2 SCSI buses. One is for
   internal devices only, the other one is for external devices only.

   

   Floppy devices found in the DEC3000s are attached to the SCSI bus (via a
   bridge card). This makes it possible to boot from them using the same
   device names as ordinary SCSI hard-disks, for example:

     >>> BOOT DKA300

   The 3000/300 series has a half-speed TurboChannel compared to the other
   3000 machines. Some TC expansion cards have troubles with the half-speed
   bus. Caveat emptor.

   The embedded ISDN interface is not supported on FreeBSD.

   DEC3000/300-class uses standard 36 bit, 72 pin Fast Page Mode SIMMs. EDO
   SIMMs, 32 or 33 bit SIMMs all will not work in Pelicans. For 32Mbyte SIMMs
   to work on the DEC3000/300-class the presence detect bits/pins of the SIMM
   must correspond to what the machine expects. If they don't, the SIMM is
   ``seen'' as a 8 Mbyte SIMM. 8 Mbyte and 32 Mbyte SIMMs can be mixed, as
   long as the pairs themselves are identical.

   When you find yourself in need of fixing 32Mbyte SIMMs that lack correct
   presence bits the following info might be of use:

   There are four presence detection bits on PS/2 SIMMs. Two of the bits
   indicate the access time. The other two indicate the memory size.

   At one end of the SIMM there are two rows of four solder pads. One row is
   connected to Vss (GND) and the other is connected to pins 67 (PRD1), 68
   (PRD2), 69 (PRD3), 70 (PRD4).

   If you bridge a pair of pads with a small resistor or a drop of solder you
   ground that particular bit.

   +------------------------------------------------------------------------+
   | PRD1             | PRD2             | Memory Size                      |
   |------------------+------------------+----------------------------------|
   | GND              | GND              | 4 or 64 Mbyte                    |
   |------------------+------------------+----------------------------------|
   | Open             | GND              | 2 or 32 Mbyte                    |
   |------------------+------------------+----------------------------------|
   | GND              | Open             | 1 or 16 Mbyte                    |
   |------------------+------------------+----------------------------------|
   | Open             | Open             | 8 Mbyte                          |
   +------------------------------------------------------------------------+

   +------------------------------------------------------------------------+
   | PRD3             | PRD4             | Access Time                      |
   |------------------+------------------+----------------------------------|
   | GND              | GND              | 50 or 100 nsec                   |
   |------------------+------------------+----------------------------------|
   | Open             | GND              | 80 nsec                          |
   |------------------+------------------+----------------------------------|
   | GND              | Open             | 70 nsec                          |
   |------------------+------------------+----------------------------------|
   | Open             | Open             | 60 nsec                          |
   +------------------------------------------------------------------------+

   DEC3000/500-class can use 2, 4, 8, 16 and 32 Mbyte 100pin SIMMs. Note that
   the maximum memory size varies from system to system, desktop machines
   have sacrificed box size for less memory SIMM sockets. Given enough
   sockets and enough SIMMs you can get to 512 Mbytes maximum. This is one of
   the main differences between floor standing and desktop machines, the
   latter have far less SIMM sockets.

   The sound hardware is not supported on any of the Birds.

   There is no X-Windows version available for the TC machines. DEC3000/300
   needs a serial console. DEC3000/500-class might work with a graphical
   console. I ran mine with a serial console so I cannot verify this.

   Birds can be obtained from surplus sales etc. As they are not PCI based
   they are no longer actively maintained. TC expansion boards can be
   difficult to obtain these days and support for them is not too good unless
   you write/debug the code yourself. Programming information for TC boards
   is hard to find. Birds are recommended only if a. you can get them cheap
   and b. if you prepared to work on the code to support them better.

   For the DEC3000/[4-9]00 series machines the kernel config file must
   contain:

     options     DEC_3000_500          
     cpu EV4

   For the DEC3000/300 (``Pelican'') machines the kernel config file must
   contain:

     options     DEC_3000_300           
     cpu EV4

     ----------------------------------------------------------------------

  2.3.5 Evaluation Board 64plus (``EB64+''), Aspen Alpine

   In its attempts to popularize the Alpha CPU DEC produced a number of so
   called Evaluation Boards. The EB64+ family of evaluation boards has the
   following feature set:

     * 21064 or 21064A CPU, 150 to 275 MHz

     * memory:

          * memory buswidth: 128 bit

          * PS/2 style 72 pin 33 bit Fast Page Mode SIMMs

          * 70ns or better

          * installed in sets of 4

          * 8 SIMM sockets

          * uses parity memory

     * Bcache / L2 cache: 512 kByte, 1 Mbyte or 2 Mbytes

     * 21072 (``APECS'') chip set

     * Intel 82378ZB PCI to ISA bridge chip (``Saturn'')

     * dual 16550A serial ports

     * Symbios 53C810 Fast-SCSI

     * embedded 10 Mbit Ethernet

     * 2 PCI slots

     * 3 ISA slots

   Aspen Alpine is slightly different, but is close enough to the EB64+ to
   run an EB64+ SRM EPROM (mine did..). The Aspen Alpine does not have an
   embedded Ethernet, has 3 instead of 2 PCI slots. It comes with 2 Mbytes of
   cache already soldered onto the mainboard. It has jumpers to select the
   use of 60, 70 or 80ns SIMM speeds.

   36 bits SIMMs work fine, 3 bits simply remain unused. Note the systems use
   Fast Page Mode memory, not EDO memory.

   The SRM console code is housed in an UV-erasable EPROM. No easy flash SRM
   upgrades for the EB64+ The latest SRM version available for EB64+ is quite
   ancient anyway.

   The EB64+ SRM can boot both 53C810 and Qlogic1040 SCSI adapters. Pitfall
   for the Qlogic is that the firmware that is down-loaded by the SRM onto
   the Qlogic chip is very old. There are no updates for the EB64+ SRM
   available. So you are stuck with old Qlogic bits too. I have had quite
   some problems when I wanted to use Ultra-SCSI drives on the Alpine with
   Qlogic. The FreeBSD kernel can be compiled to include a much newer Qlogic
   firmware revision. This is not the default because it adds hundreds of
   kBytes worth of bloat to the kernel. In FreeBSD 4.1 and later the isp
   firmware is contained in a kernel loadable module. All of this might mean
   that you need to use a non-Qlogic adapter to boot from.

   For the EB64+ class machines the kernel config file must contain:

     options     DEC_EB64PLUS           
     cpu EV4

     ----------------------------------------------------------------------

  2.3.6 Evaluation Board 164 (``EB164, PC164, PC164LX, PC164SX'') family

   EB164 is a newer design evaluation board, based on the 21164A CPU. This
   design has been used to ``spin off'' multiple variations, some of which
   are used by OEM manufacturers/assembly shops. Samsung did its own PC164LX
   which has only 32 bit PCI, whereas the Digital variant has 64 bit PCI.

     * 21164A, multiple speed variants [EB164, PC164, PC164LX]

     * 21164PC [only on PC164SX]

     * 21174 (Alcor) chip set

     * Bcache / L3 cache: EB164 uses special cache-SIMMs

     * memory bus: 128 bit / 256 bit

     * memory:

          * PS/2 style SIMMs in sets of 4 or 8

          * 36 bit, Fast Page Mode, uses ECC, [EB164 / PC164]

          * SDRAM DIMMs in sets of 2, uses ECC [PC164SX / PC164LX]

     * 2 16550A serial ports

     * PS/2 style keyboard & mouse

     * floppy controller

     * parallel port

     * 32 bits PCI

     * 64 bits PCI [some models]

     * ISA slots via an Intel 82378ZB PCI to ISA bridge chip

   Using 8 SIMMs for a 256bit wide memory can yield interesting speedups over
   a 4 SIMM/128bit wide memory. Obviously all 8 SIMMs must be of the same
   type to make this work. The system must be explicitly setup to use the 8
   SIMM memory arrangement. You must have 8 SIMMs, 4 SIMMs distributed over 2
   banks will not work.

   The SRM can boot from Qlogic 10xx boards or the Symbios 53C810[A]. Newer
   Symbios 810 revisions like the Symbios 810AE are not recognized by the SRM
   on PC164. PC164 SRM does not appear to recognize a Symbios 53C895 based
   host adapter (tested with a Tekram DC-390U2W). On the other hand some
   no-name Symbios 53C985 board has been reported to work. Cards like the
   Tekram DC-390F (Symbios875 based) have been confirmed to work fine on the
   PC164. Unfortunately this seems to be dependent on the actual version of
   the chip/board.

   Symbios 53C825[a] will also work as boot adapter. Diamond FirePort,
   although based on Symbios chips, is not bootable by the PC164SX SRM.
   PC164SX is reported to boot fine with Symbios825, Symbios875 and
   Symbios876 based cards. In addition, Adaptec 2940U and 2940UW are reported
   to work for booting (verified on SRM V5.7-1). Adaptec 2930U2 and 2940U2[W]
   do not work.

   164LX and 164SX with SRM firmware version 5.8 or later can boot from
   Adaptec 2940-series adapters.

   In summary: this family of machines is ``blessed'' with a challenging
   compatibility as far as SCSI adapters go.

   On PC164 the SRM sometimes seems to loose its variable settings. ``For
   PC164, current superstition says that, to avoid losing settings, you want
   to first downgrade to SRM 4.x and then upgrade to 5.x.'' One sample error
   that was observed was:

     ERROR: ISA table corrupt!

   A sequence of a downgrade to SRM4.9, an

     >>> ISACFG -INIT

   followed by

     >>> INIT

   made the problem go away. Some PC164 owners report they have never seen
   the problem.

   On PC164SX the AlphaBIOS allows you a selection to select SRM to be used
   as console on the next power up. This selection does not appear to have
   any effect. In other words, you will get the AlphaBIOS regardless of what
   you select. The fix is to reflash the console ROM with the SRM code for
   PC164SX. This will overwrite the AlphaBIOS and will get you the SRM
   console you desire. The SRM code can be found on the Compaq Web site.

   164LX can either have the SRM console code or the AlphaBIOS code in it's
   flash ROM because the flash ROM is too small to hold both at the same
   time.

   PC164 can boot from IDE disks assuming your SRM version is recent enough.

   EB164 needs a power supply that supplies 3.3 Volts. PC164 does not
   implement the PS_ON signal that ATX power supplies need to switch on. A
   simple switch pulling this signal to ground allows you to run a standard
   ATX power supply.

   For the EB164 class machines the kernel config file must contain:

     options         DEC_EB164
     cpu             EV5

     ----------------------------------------------------------------------

  2.3.7 AlphaStation 200 (``Mustang'') and 400 (``Avanti'') series

   The Digital AlphaStation 200 and 400 series systems are early low end PCI
   based workstations. The 200 and 250 series are desktop boxes, the 400
   series is a desk-side mini-tower.

   Features:

     * 21064 or 21064A CPU at speeds of 166 up to 333 MHz

     * DECchip 21071-AA core logic chip-set

     * Bcache / L2 cache: 512 Kbytes (200 and 400 series) or 2048KBytes (250
       series)

     * memory:

          * 64 bit bus width

          * 8 to 384 MBytes of RAM

          * 70 ns or better Fast Page DRAM

          * in three pairs (200 and 400 series)

          * in two quads, so banks of four. (250 series)

          * the memory subsystem uses parity

     * PS/2 keyboard and mouse port

     * two 16550 serial ports

     * parallel port

     * floppy disk interface

     * 32 bit PCI expansion slots (3 for the AS400-series, 2 for the AS200 &
       250-series)

     * ISA expansion slots (4 for the AS400-series, 2 for the AS200 &
       250-series) (some ISA/PCI slots are physically shared)

     * embedded 21040-based Ethernet (200 & 250 series)

     * embedded Symbios 53c810 Fast SCSI-2 chip

     * Intel 82378IB (``Saturn'') PCI-ISA bridge chip

     * graphics is embedded TGA or PCI VGA (model dependent)

     * 16 bit sound (on 200 & 250 series)

   The systems use parity memory SIMMs, but these do not need 36 bit wide
   SIMMs. 33 bit wide SIMMs are sufficient, 36 bit SIMMs are acceptable too.
   EDO or 32 bit SIMMs will not work. 4, 8, 16, 32 and 64 Mbyte SIMMs are
   supported.

   The AS200 & AS250 sound hardware is reported to work OK assuming you have
   the following line in your kernel config file:

     device pcm0 at isa? port 0x530 irq 9 drq 0 flags 0x10011

   AlphaStation 200 & 250 series have an automatic SCSI terminator. This
   means that as soon as you plug a cable onto the external SCSI connector
   the internal terminator of the system is disabled. It also means that you
   should not leave unterminated cables plugged into the machine.

   AlphaStation 400 series have an SRM variable that controls termination. In
   case you have external SCSI devices connected you must set this SRM
   variable using

     >>> SET CONTROL_SCSI_TERM EXTERNAL.

   If only internal SCSI devices are present use:

     >>> SET CONTROL_SCSI_TERM INTERNAL

   For the AlphaStation-[24][05]00 machines the kernel config file must
   contain:

     options     DEC_2100_A50
     cpu EV4

     ----------------------------------------------------------------------

  2.3.8 AlphaStation 500 and 600 (``Alcor'' & ``Maverick'' for EV5, ``Bret'' for
  EV56)

   AS500 and 600 were the high-end EV5 / PCI based workstations. EV6 based
   machines have in the meantime taken their place as front runners. AS500 is
   a desktop in a dark blue case (TopGun blue), AS600 is a sturdy desk-side
   box. AS600 has a nice LCD panel to observe the early stages of SRM
   startup.

   Features:

     * 21164 EV5 CPU at 266, 300, 333, 366, 400, 433, 466, or 500 MHz (AS500)
       or at 266, 300 or 333 MHz (AS600)

     * 21171 or 21172 (Alcor) core logic chip-set

     * Cache:

          * 2 or 4 Mb L3 / Bcache (AS600 at 266 MHz)

          * 4 Mb L3 / Bcache (AS600 at 300 MHz)

          * 2 or 8 Mb L3 / Bcache (8 Mb on 500 MHz version only)

          * 2 to 16 Mb L3 / Bcache (AS600; 3 cache-SIMM slots)

     * memory buswidth: 256 bits

     * AS500 memory:

          * industry standard 72 bit wide buffered DIMMs

          * 8 DIMM slots

          * installed in sets of 4

          * maximum memory is 1 GB (512 Mb max on 333 MHz CPUs)

          * uses ECC

     * AS600 memory:

          * industry standard 36 bit Fast Page Mode SIMMs

          * 32 SIMM slots

          * installed in sets of 8

          * maximum memory is 1 GB

          * uses ECC

     * Qlogic 1020 based wide SCSI bus (1 bus/chip for AS500, 2 buses/chip
       for AS600)

     * 21040 based 10 Mbit Ethernet adapter, both Thinwire and UTP connectors

     * expansion:

          * AS500:

               * 3 32-bit PCI slots

               * 1 64-bit PCI slot

          * AS600:

               * 2 32-bit PCI slot

               * 3 64-bit PCI slots

               * 1 PCI/EISA physically shared slot

               * 3 EISA slots

               * 1 PCI and 1 EISA slot are occupied by default

     * 21050 PCI-to-PCI bridge chip

     * Intel 82375EB PCI-EISA bridge (AS600 only)

     * 2 16550A serial ports

     * 1 parallel port

     * 16 bit audio Windows Sound System, in a dedicated slot (AS500) in EISA
       slot (AS600, this is an ISA card)

     * PS/2 keyboard and mouse port

   Early machines had Fast SCSI interfaces, later ones are Ultra SCSI
   capable. AS500 shares its single SCSI bus with internal and external
   devices. For a Fast SCSI bus you are limited to 1.8 meters bus length
   external to the box. +++ This is what some DEC docs suggest. Did they ever
   go UltraSCSI?

   AS600 has one Qlogic SCSI chip dedicated to the internal devices whereas
   the other Qlogic SCSI chip is dedicated to external SCSI devices.

   In AS500 DIMMs are installed in sets of 4, in ``physically interleaved''
   layout. So, a bank of 4 DIMMs is not 4 physically adjacent DIMMs.

   In AS600 the memory SIMMs are placed onto two memory daughter cards. SIMMs
   are installed in sets of 8. Both memory daughter cards must be populated
   identically.

   AS600 has a peculiarity for its PCI slots. AS600 (or rather the PCI
   expansion card containing the SCSI adapters) does not allow I/O port
   mapping, therefore all devices behind it must use memory mapping. If you
   have problems getting the Qlogic SCSI adapters to work, add the following
   option to /boot/loader.rc:

     set isp_mem_map=0xff

   This may need to be typed at the boot loader prompt before booting the
   installation kernel.

   For the AlphaStation-[56]00 machines the kernel config file must contain:

     options     DEC_KN20AA
     cpu EV5

     ----------------------------------------------------------------------

  2.3.9 AlphaServer 1000 (``Mikasa''), 1000A (``Noritake'') and 800

   The AlphaServer 1000 and 800 range of machines are intended as
   departmental servers. They come in quite some variations in packaging and
   mainboard/cpu. Generally speaking there are 21064 (EV4) CPU based machines
   and 21164 (EV5) based ones. The CPU is on a daughter card, and the type of
   CPU (EV4 or EV5) must match the mainboard in use.

   AlphaServer 800 has a much smaller mini tower case, it lacks the
   StorageWorks SCSI hot-plug chassis. The main difference between AS1000 and
   AS1000A is that AS1000A has 7 PCI slots whereas AS1000 only has 3 PCI
   slots and has EISA slots instead.

   AS800 with an EV5/400 MHz CPU was later re-branded to become a ``DIGITAL
   Server 3300[R]'', AS800 with an EV5/500 MHz CPU was later re-branded to
   become a ``DIGITAL Server 3305[R]''.

   Features:

     * 21064 EV4[5] CPU at 200, 233 or 266 MHz 21164 EV5[6] CPU at 300, 333
       or 400 MHz (or 500 MHz for AS800 only)

     * memory:

          * buswidth: 128 bit with ECC

          * AS1000[A]:

               * 72pin 36 bit Fast Page Mode SIMMs, 70ns or better

               * 16 (EV5 machines) or 20 (EV4 machines) SIMM slots

               * max memory is 1 GB

               * uses ECC

          * AS800: Uses 60ns 3.3Volts EDO DIMMs

     * embedded VGA (on some mainboard models)

     * 3 PCI, 2 EISA, 1 64-bit PCI/EISA combo (AS800)

     * 7 PCI, 2 EISA (AS1000A)

     * 2 PCI, 1 EISA/PCI, 7 EISA (AS1000)

     * embedded SCSI based on Symbios 810 [AS1000] or Qlogic 1020 [AS1000A]

   AS1000 based machines come in multiple enclosure types. Floor standing,
   rack-mount, with or without StorageWorks SCSI chassis etc. The electronics
   are the same.

   AS1000-systems: All EV4 based machines use standard PS/2 style 36 bit
   72pin SIMMs in sets of 5. The fifth SIMM is used for ECC. All EV5 based
   machines use standard PS/2 style 36 bit 72pin SIMMs in sets of 4. The ECC
   is done based on the 4 extra bits per SIMM (4 bits out of 36). The EV5
   mainboards have 16 SIMM slots, the EV4 mainboards have 20 slots.

   AS800 machines use DIMMs in sets of 4. DIMM installation must start in
   slots marked bank 0. A bank is four physically adjacent slots. The biggest
   size DIMMs must be installed in bank 0 in case 2 banks of different DIMM
   sizes are used. Max memory size is 2GB. Note that these are EDO DIMMs.

   The AS1000/800 are somewhat stubborn when it comes to serial consoles.
   They need

     >>> SET CONSOLE SERIAL

   before they go for a serial console. Pulling the keyboard from the machine
   is not sufficient, like it is on most other Alpha models. Going back to a
   graphical console needs

     >>> SET CONSOLE GRAPHICS

   at the serial console.

   For AS800 you want to check if your Ultra-Wide SCSI is indeed in Ultra
   mode. This can be done using the EEROMCFG.EXE utility that is on the
   Console Firmware Upgrade CDROM.

   For the AlphaServer1000/1000A/800 machines the kernel config file must
   contain:

     options     DEC_1000A
     cpu EV4             # depends on the CPU model installed
     cpu EV5             # depends on the CPU model installed

     ----------------------------------------------------------------------

  2.3.10 DS10/VS10/XP900 (``Webbrick'') / XP1000 (``Monet'') / DS10L (``Slate'')

   Webbrick and Monet are high performance workstations/servers based on the
   EV6 CPU and the Tsunami chipset. Tsunami is also used in much higher-end
   systems and as such has plenty of performance to offer. DS10, VS10 and
   XP900 are different names for essentially the same system. The differences
   are the software and options that are supported. DS10L is a DS10 based
   machine in a 1U high rackmount enclosure. DS10L is intended for ISPs and
   for HPTC clusters (e.g. Beowulf)

     ----------------------------------------------------------------------

    2.3.10.1 ``Webbrick / Slate''

     * 21264 EV6 CPU at 466 MHz

     * L2 / Bcache: 2MB, ECC protected

     * memory bus: 128 bit via crossbar, 1.3GB/sec memory bandwith

     * memory:

          * industry standard 200 pin 83 MHz buffered ECC SDRAM DIMMs

          * 4 DIMM slots for DS10; 2GB max memory

          * 2 DIMM slots for DS10L; 1GB max memory

          * DIMMs are installed in pairs of 2

     * 21271 Core Logic chipset (``Tsunami'')

     * 2 on-board 21143 Fast Ethernet controllers

     * AcerLabs M5237 (Aladdin-V) USB controller (disabled)

     * AcerLabs M1533 PCI-ISA bridge

     * AcerLabs Aladdin ATA-33 controller

     * embedded dual EIDE

     * expansion: 3 64-bit PCI slots and 1 32-bit PCI slot. DS10L has a
       single 64bit PCI slot

     * 2 16550A serial ports

     * 1 parallel port

     * 2 USB

     * PS/2 keyboard & mouse port

   The system has a smart power controller. This means that parts of the
   system remain powered when it is switched off (like an ATX-style PC power
   supply). Before servicing the machine remove the power cord.

   Webbrick is shipped in a desktop-style case similar to the older 21164
   ``Maverick'' workstations but this case offers much better access to the
   components. If you intend to build a farm you can rackmount them in a
   19-inch rack; they are 3U high. Slate is 1U high but has only one PCI
   slot.

   DS10 has 4 DIMM slots. DIMMs are installed as pairs. Please note that DIMM
   pairs are not installed in adjacent DIMM sockets but rather physically
   interleaved. DIMM sizes of 32, 64, 128, 256 and 512 Mbytes are supported.

   When 2 pairs of identical-sized DIMMs are installed DS10 will use memory
   interleaving for increased performance. DS10L, which has only 2 DIMM slots
   cannot do interleaving.

   Starting with SRM firmware version 5.9 you can boot from Adaptec
   2940-series adapters in addition to the usual set of Qlogic and
   Symbios/NCR adapters.

   The base model comes with a FUJITSU 9.5GB ATA disk as its boot device.
   FreeBSD works just fine using EIDE disks on Webbrick. DS10 has 2 IDE
   interfaces on the mainboard. Machines destined for Tru64 Unix or VMS are
   standard equipped with Qlogic-driven Ultra-SCSI disks

   On the PCI bus 32 and 64 bit cards are supported, in 3.3V and 5V variants.

   The USB ports are not supported and disabled by Compaq.

   The kernel config file must contain:

     options     DEC_ST6600   
     cpu EV5

     Note: Contrary to expectation there is no cpu EV6 defined for inclusion
     in the kernel config file. The cpu EV5 is mandatory to keep config(8)
     happy.

     ----------------------------------------------------------------------

    2.3.10.2 ``Monet''

     * 21264 EV6 at 500 MHz 21264 EV67 at 500 or 667 MHz (XP1000G, codenamed
       Brisbane) CPU is mounted on a daughter-card which is field-upgradable

     * L2 / Bcache: 4MB, ECC protected

     * memory bus: 256 bit

     * memory: 128 or 256 Mbytes 100 MHz (PC100) 168 pin JEDEC standard,
       registered ECC SDRAM DIMMs

     * 21271 Core Logic chip-set (``Tsunami'')

     * 1 on-board 21143 Ethernet controller

     * Cypress 82C693 USB controller

     * Cypress 82C693 PCI-ISA bridge

     * Cypress 82C693 controller

     * expansion: 2 independent PCI buses, driven by high-speed I/O channels
       called ``hoses'':

          * hose 0: (the upper 3 slots) 2 64-bit PCI slots 1 32-bit PCI slot

          * hose 1: (the bottom 2 slots) 2 32-bit PCI slots (behind a 21154
            PCI-PCI bridge)

          * 2 of the 64-bit PCI slots are for full-length cards

          * all of the 32-bit PCI slots are for short cards

          * 1 of the 32-bit PCI slots is physically shared with an ISA slot

          * all PCI slots run at 33MHz

     * 1 Ultra-Wide SCSI port based on a Qlogic 1040 chip

     * 2 16550A serial port

     * 1 parallel port

     * PS/2 keyboard & mouse port

     * embedded 16-bit ESS ES1888 sound chip

     * 2 USB ports

     * graphics options: ELSA Gloria Synergy or DEC/Compaq PowerStorm 3D
       accelerator cards

   Monet is housed in a mini-tower like enclosure quite similar to the Miata
   box.

   The on-board Qlogic UW-SCSI chip supports up to 4 internal devices. There
   is no external connector for the on-board SCSI.

   For 500 MHz CPUs 83 MHz DIMMs will do. Compaq specifies PC100 DIMMs for
   all CPU speeds. DIMMs are installed in sets of 4, starting with the DIMM
   slots marked ``0'' Memory capacity is max 4 GB. DIMMs are installed
   ``physically interleaved'', note the markings of the slots. Memory
   bandwidth of Monet is twice that of Webbrick. The DIMMs live on the CPU
   daughter-card. Note that the system uses ECC RAM so you need DIMMs with 72
   bits (not the generic PC-class 64 bit DIMMs)

   The EIDE interface is usable / SRM bootable so FreeBSD can be rooted on an
   EIDE disk. Although the Cypress chip has potential for 2 EIDE channels
   Monet uses only one of them.

   The USB interface is supported by FreeBSD.If you experience problems
   trying to use the USB interface please check if the SRM variable
   usb_enable is set to on. You can change this by performing:

     >>> SET USB_ENABLE ON

     Important: Don"t try to use Symbios-chip based SCSI adapters in the PCI
     slots connected to hose 1. There is a not-yet-found FreeBSD bug that
     prevents this from working correctly.

     Important: Not all VGA cards will work behind the PCI-PCI bridge (so in
     slots 4 and 5). Only cards that implement VGA-legacy addressing
     correctly will work. Workaround is to put the VGA card ``before'' the
     bridge.

   The sound chip is not currently supported with FreeBSD.

   The kernel config file must contain:

     options     DEC_ST6600   
     cpu EV5

     Note: Contrary to expectation there is no cpu EV6 defined for inclusion
     in the kernel config file. The cpu EV5 is mandatory to keep config(8)
     happy.

     ----------------------------------------------------------------------

  2.3.11 DS20/DS20E (``Goldrush'')

   Features:

     * 21264 EV6 CPU at 500 or 670 MHz

     * dual CPU capable machine

     * L2 / Bcache: 4 Mbytes per CPU

     * memory bus: dual 256 bit wide with crossbar switch

     * memory:

          * SDRAM DIMMs

          * installed in sets of 4

          * 16 DIMM slots, max. 4GB

          * uses ECC

     * 21271 Core Logic chip-set (``Tsunami'')

     * embedded Adaptec ? Wide Ultra SCSI

     * expansion:

          * 2 independent PCI buses, driven by high-speed I/O channels called
            ``hoses''

          * 6 64-bit PCI slots, 3 per hose

          * 1 ISA slot

   DS20 needs

     >>> SET CONSOLE SERIAL

   before it goes for a serial console. Pulling the keyboard from the machine
   is not sufficient. Going back to a graphical console needs

     >>> SET CONSOLE GRAPHICS

   at the serial console. Confusing is the fact that you will get SRM console
   output on the graphics console with the console set to serial, but when
   FreeBSD boots it honors the CONSOLE variable setting and all the boot
   messages as well as the login prompt will go to the serial port.

   The DS20 is housed in a fat cube-like enclosure. The enclosure also
   contains a StorageWorks SCSI hot-swap shelf for a maximum of seven 3.5"
   SCSI devices. The DS20E is in a sleeker case, and lacks the StorageWorks
   shelf.

   The embedded Adaptec SCSI chip on the DS20 is disabled and is therefore
   not usable under FreeBSD.

   Starting with SRM firmware version 5.9 you can boot from Adaptec
   2940-series adapters in addition to the usual set of Qlogic and
   Symbios/NCR adapters. This unfortunately does not include the embedded
   Adaptec SCSI chips.

   If you are using banks of DIMMs of different sizes the biggest DIMMs
   should be installed in the DIMM slots marked 0 on the mainboard. The DIMM
   slots should be filled ``in order'' so after bank 0 install in bank 1 and
   so on.

   Don't try to use Symbios-chip based SCSI adapters in the PCI slots
   connected to hose 1. There is a not-yet-found FreeBSD bug that prevents
   this from working correctly. DS20 ships by default with a Symbios on hose
   1 so you have to move this card before you can install/boot FreeBSD on it.

   The kernel config file must contain:

     options     DEC_ST6600   
     cpu EV5

     Note: Contrary to expectation there is no cpu EV6 defined for inclusion
     in the kernel config file. The cpu EV5 is mandatory to keep config(8)
     happy.

     ----------------------------------------------------------------------

  2.3.12 AlphaPC 264DP / UP2000

   UP2000 is built by Alpha Processor Inc.

   Features:

     * 21264 EV6 CPU at 670 MHz

     * dual CPU capable

     * L2 / Bcache: 4 Mbytes per CPU

     * memory bus: 256 bit

     * memory: SDRAM DIMMs installed in sets of 4, uses ECC, 16 DIMM slots,
       max. 4GB

     * 21272 Core Logic chip-set (``Tsunami'')

     * embedded Adaptec AIC7890/91 Wide Ultra SCSI

     * 2 embedded IDE based on Cypress 82C693 chips

     * embedded USB via Cypress 82C693

     * expansion:

          * 2 independent PCI buses, driven by high-speed I/O channels called
            ``hoses''

          * 6 64-bit PCI slots, 3 per hose

          * 1 ISA slot

   Currently a maximum of 2GB memory is supported by FreeBSD.

   The on-board Adaptec is not bootable but works with FreeBSD 4.0 and later
   as a datadisk-only SCSI bus.

   Busmaster DMA is supported on the first IDE interface only.

   The kernel config file must contain:

     options     DEC_ST6600   
     cpu EV5

     Note: Contrary to expectation there is no cpu EV6 defined for inclusion
     in the kernel config file. The cpu EV5 is mandatory to keep config(8)
     happy.

     ----------------------------------------------------------------------

  2.3.13 AlphaServer 2000 (``DemiSable''), 2100 (``Sable''), 2100A (``Lynx'')

   The AlphaServer 2[01]00 machines are intended as departmental servers.
   This is medium iron. They are multi-CPU machines, up to 2 CPUs (AS2000) or
   4 CPUs (2100[A]) can be installed. Both floor-standing and 19" rackmount
   boxes exist. Rackmount variations have different numbers of I/O expansion
   slots, different max number of CPUs and different maximum memory size.
   Some of the boxes come with an integral StorageWorks shelf to house
   hot-swap SCSI disks. There was an upgrade program available to convert
   your Sable machine into a Lynx by swapping the I/O backplane (the C-bus
   backplane remains). CPU upgrades were available as well.

     * 21064 EV4[5] CPU[s] at 200, 233, 275 MHz or 21164 EV5[6] CPU[s]s at
       250, 300, 375, 400 MHz

     * cache: varies in size with the CPU model; 1, 4 or 8Mbyte per CPU

     * embedded floppy controller driving a 2.88 Mbytes drive

     * embedded 10Mbit 21040 Ethernet [AS2100 only]

     * 2 serial ports

     * 1 parallel port

     * PS/2 style keyboard & mouse port

   The CPUs spec-ed as 200 MHz are in reality running at 190 MHz. Maximum
   number of CPUs is 4. All CPUs must be of the same type/speed.

   If any of the processors are ever marked as failed, they will remain
   marked as failed even after they have been replaced (or reseated) until
   you issue the command

     >>> CLEAR_ERROR ALL

   on the SRM console and power-cycle the machine. This may be true for other
   modules (IO and memory) as well, but it has not been verified.

   The machines use dedicated memory boards. These boards live on a 128 bit
   C-bus shared with the CPU boards. DemiSable supports up to 1GB, Sable up
   to 2GB. One of the memory bus slots can either hold a CPU or a memory
   card. A 4 CPU machine can have a maximum of 2 memory boards.

   Some memory board models house SIMMs. These are called SIMM carriers.
   There are also memory modules that have soldered-on memory chips instead
   of SIMMs. These are called ``flat memory modules''.

   SIMM boards are used in sets of eight 72-pin 36 bit FPM memory of 70ns or
   faster. SIMM types supported are 1Mb x36 bit (4 Mbyte) and 4Mb x36 bit (16
   Mbyte). Each memory board can house 4 banks of SIMMs. SIMM sizes can not
   be mixed on a single memory board. The first memory module must be filled
   with SIMMs before starting to fill the next memory module. Note that the
   spacing between the slots is not that big, so make sure your SIMMs fit
   physically (before buying them..)

   Both Lynx and Sable are somewhat stubborn when it comes to serial
   consoles. They need

     >>>  SET CONSOLE SERIAL

   before they go for a serial console. Pulling the keyboard from the machine
   is not sufficient, like it is on many other Alpha models. Going back to a
   graphical console needs

     >>> SET CONSOLE GRAPHICS

   at the serial console. On Lynx keep the VGA card in one of the primary PCI
   slots. EISA VGA cards are not slot sensitive.

   The machines are equipped with a small OCP (Operator Control Panel) LCD
   screen. On this screen the self-test messages are displayed during system
   initialization. You can put your own little text there by using the SRM:

     >>> SET OCP_TEXT "FreeBSD"
      

   The SRM

     >>> SHOW FRU

   command produces an overview of your configuration with module serial
   numbers, hardware revisions and error log counts.

   Both Sable, DemiSable and Lynx have Symbios 810 based Fast SCSI on-board.
   Check if it is set to Fast SCSI speed by

     >>> SHOW PKA0_FAST

   When set to 1 it is negotiating for Fast speeds.

     >>> SET PKA0_FAST 1

   enables Fast SCSI speeds.

   AS2100[A] come equipped with a StorageWorks 7 slot SCSI cage. A second
   cage can be added inside the cabinet. AS2000 has a single 7 slot SCSI
   cage, which cannot be expanded with an additional one. Note that the slot
   locations in these cages map differently to SCSI IDs compared to the
   standard StorageWorks shelves. Slot IDs from top to bottom are 0, 4, 1, 5,
   2, 6, 3 when using a single bus configuration.

   The cage can also be set to provide two independent SCSI buses. This is
   used for embedded RAID controllers like the KZPSC (Mylex DAC960). Slot ID
   assignments for split bus are, from top to bottom: 0A, 0B, 1A, 1B, 2A, 2B,
   3A, 3B. Where A and B signify a SCSI bus. In a single bus configuration
   the terminator module on the back of the SCSI cage is on the TOP. The
   jumper module is on the BOTTOM. For split bus operation these two modules
   are reversed. The terminator can be distinguished from the jumper by
   noting the chips on the terminator. The jumper does not have any active
   components on it.

   DemiSable has 7 EISA slots and 3 PCI slots. Sable has 8 EISA and 3 PCI
   slots. Lynx, being newer, has 8 PCI and 3 EISA slots. The Lynx PCI slots
   are grouped in sets of 4. The 4 PCI slots closest to the CPU/memory slots
   are the primary slots, so logically before the PCI bridge chip. Note that
   contrary to expectation the primary PCI slots are the highest numbered
   ones (PCI4 - PCI7).

   Make sure you run the EISA Configuration Utility (from floppy) when
   adding/change expansion cards in EISA slots or after upgrading your
   console firmware. This is done by inserting the ECU floppy and typing

     >>> RUNECU

     Note: EISA slots are currently unsupported, but the Compaq Qvision EISA
     VGA adapter is treated as an ISA device. It therefore works OK as a
     console.

   A special Extended I/O module for use on the C-bus was planned-for. If
   they ever saw daylight is unknown. In any case FreeBSD has never been
   verified with an ExtIO module.

   The machines can be equipped with redundant power supplies. Note that the
   enclosure is equipped with interlock switches that switch off power when
   the enclosure is opened. The system's cooling fans are speed controlled.
   When the machine has more than 2 CPUs and more than 1 memory board dual
   power supplies are mandatory.

   The kernel config file must contain:

     options     DEC_2100_A500
     cpu EV4     #dependent on CPU model installed
     cpu EV5     #dependent on CPU model installed

     ----------------------------------------------------------------------

  2.3.14 AlphaServer 4x00 (``Rawhide'')

   The AlphaServer 4x00 machines are intended as small enterprise servers.
   Expect a 30" high pedestal cabinet or alternatively the same system box in
   a 19" rack. This is medium iron, not a typical hobbyist system. Rawhides
   are multi-CPU machines, up to 4 CPUs can be in a single machine. Basic
   disk storage is housed in one or two StorageWorks shelves at the bottom of
   the pedestal. The Rawhides intended for the NT market are designated
   DIGITAL Server 7300 (5/400 CPU), DIGITAL Server 7305 (5/533 CPU). A
   trailing R on the part-number means a rackmount variant.

   Features:

     * 21164 EV5 CPUs at 266, 300 MHz or 21164A EV56 CPUs at 400, 466, 533,
       600 and 666 Mhz

     * cache: 4 Mbytes per CPU. EV5 300 MHz was also available cache-less. 8
       Mbytes for EV5 600Mhz

     * memory bus: 128 bit with ECC

     * embedded floppy controller

     * 2 serial ports

     * 1 parallel port

     * PS/2 style keyboard & mouse port

   Rawhide uses a maximum of 8 RAM modules. These modules are used in pairs
   and supply 72 bits to the bus (this includes ECC bits). Memory can be EDO
   RAM or synchronous DRAM. A fully populated Rawhide has 4 pairs of memory
   modules. Given the choice use SDRAM for best performance. The highest
   capacity memory board must be in memory slot 0. A mix of memory board
   sizes is allowed. A mix of EDO and SDRAM is also reported as working
   (assuming you don't try to mix EDO and SDRAM in one module pair). A mix of
   EDO and SDRAM results in the entire memory subsystem running at the slower
   EDO timing

   Rawhide has an embedded Symbios 810 chip that gives you a narrow fast-SCSI
   bus. Generally only the SCSI CDROM is driven by this interface.

   Rawhides are available with a 8 64-bit PCI / 3 EISA slot expansion
   backplanes (called ``Saddle'' modules). There are 2 separate PCI buses,
   PCI0 and PCI1. PCI0 has 1 dedicated PCI slot and (shared) 3 PCI/EISA
   slots. PCI0 also has a PCI/EISA bridge that drives things like the serial
   and parallel ports, keyboard/mouse etc. PCI1 has 4 PCI slots and an
   Symbios 810 SCSI chip. VGA console cards must be installed in a slot
   connected to PCI0.

   The current FreeBSD implementation has problems in handling PCI bridges.
   There is currently a limited fix in place which allows for single level,
   single device PCI bridges. The fix allows the use of the Digital supplied
   Qlogic SCSI card which sits behind a 21054 PCI bridge chip.

   

     Note: EISA slots are currently unsupported, but the Compaq Qvision EISA
     VGA adapter is treated as an ISA device. It therefore works OK as a
     console.

   Rawhide employs an I2C based power controller system. If you want to be
   sure all power is removed from the system remove the mains cables from the
   system.

   The kernel config file must contain:

     options     DEC_KN300
     cpu EV5

     ----------------------------------------------------------------------

  2.3.15 AlphaServer 1200 (``Tincup'') and AlphaStation 1200 (``DaVinci'')

   The AlphaServer 1200 machine is the successor to the AlphaServer 1000A. It
   uses the same enclosure the 1000A uses, but the logic is based on the
   AlphaServer 4000 design. These are multi-CPU machines, up to 2 CPUs can be
   in a single machine. Basic disk storage is housed in a StorageWorks
   shelves The AS1200 intended for the NT market were designated DIGITAL
   Server 5300 (5/400 CPU) and DIGITAL Server 5305 (5/533 CPU).

   Features:

     * 21164A EV56 CPUs at 400 or 533 Mhz

     * cache: 4 Mbytes per CPU

     * memory bus: 128 bit with ECC, DIMM memory on two memory daughter
       boards

     * embedded floppy controller

     * 2 serial ports

     * 1 parallel port

     * PS/2 style keyboard & mouse port

   AS1200 uses 2 memory daughter cards. On each of these cards are 8 DIMM
   slots. DIMMs must be installed in pairs. The maximum memory size is 4
   GBytes. Slots must be filled in order and slot 0 must contain the largest
   size DIMM if different sized DIMMs are used. AS1200 employs fixed starting
   addresses for DIMMs, each DIMM pair starts at a 512 Mbyte boundary. This
   means that if DIMMs smaller than 256 Mbyte are used the system's physical
   memory map will contain ``holes''. Supported DIMM sizes are 64 Mbytes and
   256 Mbytes. The DIMMs are 72 bit SDRAM based, as the system employs ECC.

     Note: FreeBSD currently supports up to 2GBytes

   AS1200 has an embedded Symbios 810 drive Fast SCSI bus.

   Tincup has 5 64-bit PCI slots, one 1 32-bit PCI slot and one EISA slot
   (which is physically shared with one of the 64-bit PCI slots). There are 2
   separate PCI buses, PCI0 and PCI1. PCI0 has the 32-bit PCI slot and the 2
   top-most 64-bit PCI slots. PCI0 also has an Intel 82375EB PCI/EISA bridge
   that drives things like the serial and parallel ports, keyboard/mouse etc.
   PCI1 has 4 64-bit PCI slots and an Symbios 810 SCSI chip. VGA console
   cards must be installed in a slot connected to PCI0.

   The system employs an I2C based power controller system. If you want to be
   sure all power is removed from the system remove the mains cables from the
   system. Tincup uses dual power supplies in load-sharing mode and not as a
   redundancy pair.

   The kernel config file must contain:

     options     DEC_KN300
     cpu EV5

     ----------------------------------------------------------------------

  2.3.16 AlphaServer 8200 and 8400 (``TurboLaser'')

   The AlphaServer 8200 and 8400 machines are enterprise servers. Expect a
   tall 19" cabinet (8200) or fat (8400) 19" rack. This is big iron, not a
   hobbyist system. TurboLasers are multi-CPU machines, up to 12 CPUs can be
   in a single machine. The TurboLaser System Bus (TLSB) allows 9 nodes on
   the AS8400 and 5 nodes on the AS8200. TLSB is 256 bit data, 40 bit address
   allowing 2.1 GBytes/sec. Nodes on the TLSB can be CPUs, memory or I/O. A
   maximum of 3 I/O ports are supported on a TLSB.

   Basic disk storage is housed in a StorageWorks shelf. AS8400 uses 3 phase
   power, AS8200 uses single phase power.

   Features:

     * 21164 EV5/EV56 CPUs at up to 467 MHz or 21264 EV67 CPUs at up to 625
       MHz

     * one or two CPUs per CPU module

     * cache: 4Mbytes B-cache per CPU

     * memory bus: 256 bit with ECC

     * memory: big memory modules that plug into the TLSB, which in turn hold
       special SIMM modules. Memory modules come in varying sizes, up to 4
       GBytes a piece. Uses ECC (8 bits per 64 bits of data) 7 memory modules
       max for AS8400, 3 modules max for AS8200. Maximum memory is 28 GBytes.

     * expansion: 3 system ``I/O ports'' that allow up to 12 I/O channels
       each I/O channel can connect to XMI, Futurebus+ or PCI boxes

   FreeBSD supports (and has been tested with) up to 2 GBytes of memory on
   TurboLaser. There is a trade-off to be made between TLSB slots occupied by
   memory modules and TLSB slots occupied by CPU modules. For example you can
   have 28GBytes of memory but only 2 CPUs (1 module) at the same time.

   Only PCI expansion is supported on FreeBSD. XMI or Futurebus+ (which are
   AS8400 only) are both unsupported.

   The I/O port modules are designated KFTIA or KFTHA. The I/O port modules
   supply so called ``hoses'' that connect to up to 4 (KFTHA) PCI buses or 1
   PCI bus (KFTIA). KFTIA has embedded dual 10baseT Ethernet, single FDDI, 3
   SCSI Fast Wide Differential SCSI buses and a single Fast Wide Single Ended
   SCSI bus. The FWSE SCSI is intended for the CDROM.

   KFTHA can drive via each of its 4 hoses a DWLPA or DWLPB box. The DWLPx
   house a 12 slots 32 bit PCI backplane. Physically the 12 slots are 3
   4-slot buses but to the software it appears as a single 12 slots PCI bus.
   A fully expanded AS8x00 can have 3 (I/O ports) times 4 (hoses) times 12
   (PCI slots/DWLPx) = 144 PCI slots. The maximum bandwidth per KFTHA is 500
   Mbytes/second. DWLPA can also house 8 EISA cards, 2 slots are PCI-only, 2
   slots are EISA only. Of the 12 slots 2 are always occupied by an I/O and
   connector module. DWLPB are the prefered I/O boxes.

   For best performance distribute high bandwidth (FibreChannel, Gigabit
   Ethernet) over multiple hoses and/or multiple KFTHA/KFTIA.

   Currently PCI expansion cards containing PCI bridges are not usable with
   FreeBSD. Don't use them at this time.

   The single ended narrow SCSI bus on the KFTIA will turn up as the fourth
   SCSI bus. The 3 fast-wide differential SCSI buses of the KFTIA precede it.

   AS8x00 are generally run with serial consoles. Some newer machines might
   have a graphical console of some sorts but FreeBSD has only been tested on
   a serial console.

   For serial console usage either change /etc/ttys to have:

     console "/usr/libexec/getty std.9600"   unknown   on secure

   as the console entry, or add

     zs0     "/usr/libexec/getty std.9600"   unknown   on secure

   For the AlphaServer 8x00 machines the kernel config file must contain:

     options     DEC_KN8AE       # Alpha 8200/8400 (Turbolaser)
     cpu EV5

   Contrary to expectation there is no cpu EV6 defined for inclusion in the
   kernel config file. The cpu EV5 is mandatory to keep config(8) happy.

     ----------------------------------------------------------------------

  2.3.17 Alpha Processor Inc. UP1000

   The UP1000 is an ATX mainboard based on the 21264a CPU which itself lives
   in a Slot B module. It is normally housed in an ATX tower enclosure.

   Features:

     * 21264a Alpha CPU at 600 or 700 MHz in a Slot B module (includes
       cooling fans)

     * memory bus: 128 bits to the L2 cache, 64 bits from Slot B to the
       AMD-751

     * on-board Bcache / L2 cache: 2MB (600Mhz) or 4MB (700Mhz)

     * AMD AMD-751 (``Irongate'') system controller chip

     * Acer Labs M1543C PCI-ISA bridge controller / super-IO chip

     * PS/2 mouse & keyboard port

     * memory: 168-pin PC100 unbuffered SDRAM DIMMS, 3 DIMM slots DIMM sizes
       supported are 64, 128 or 256 Mb in size

     * 2 16550A serial port

     * 1 ECP/EPP parallel port

     * floppy interface

     * 2 embedded Ultra DMA33 IDE interface

     * 2 USB ports

     * expansion:

          * 4 32 bit PCI slots

          * 2 ISA slots

          * 1 AGP slot

   Slot B is a box-like enclosure that houses a daughter-board for the CPU
   and cache. It has 2 small fans for cooling. Loud fans..

   The machine needs ECC capable DIMMs, so 72 bit ones. This does not appear
   to be documented in the UP1000 docs. The system accesses the serial EEPROM
   on the DIMMs via the SM bus. Note that if only a single DIMM is used it
   must be installed in slot 2. This is a bit counter-intuitive.

   The UP1000 needs a 400Watt ATX power supply according to the manufacturer.
   This might be a bit overly conservative/pessimistic judging from the power
   consumption of the board & cpu. But as always you will have to take your
   expansion cards and peripherals into account. The M1543C chip contains
   power management functionality & temperature monitoring (via I2C / SM
   bus).

   Chances are that your UP1000 comes by default with AlphaBios only. The SRM
   console firmware is available from the Alpha Processor Inc. website. It is
   currently available in a beta version which was successfully used during
   the port of FreeBSD to the UP1000.

   The embedded Ultra DMA EIDE ports are bootable by the SRM console.

   UP1000 SRM can boot off an Adaptec 294x adapter. Under high I/O load
   conditions machine lockups have been observed using the Adaptec 294x. A
   Symbios 875 based card works just fine, using the sym driver. Most likely
   other cards based on the Symbios chips that the sym driver supports will
   work as well.

   The USB interfaces are disabled by the SRM console and have not (yet) been
   tested with FreeBSD.

   For the UP1000 the kernel config file must contain:

     options     API_UP1000      # UP1000, UP1100 (Nautilus)
     cpu EV5

     ----------------------------------------------------------------------

  2.3.18 Alpha Processor Inc. UP1100

   The UP1100 is an ATX mainboard based on the 21264a CPU running at 600 MHz.
   It is normally housed in an ATX tower enclosure.

   Features:

     * 21264a Alpha EV6 CPU at 600 or 700 MHz

     * memory bus: 100MHz 64-bit (PC-100 SDRAM), 800 MB/s memory bandwidth

     * on-board Bcache / L2 cache: 2Mb

     * AMD AMD-751 (``Irongate'') system controller chip

     * Acer Labs M1535D PCI-ISA bridge controller / super-IO chip

     * PS/2 mouse & keyboard port

     * memory: 168-pin PC100 unbuffered SDRAM DIMMS, 3 DIMM slots DIMM sizes
       supported are 64, 128 or 256 Mb in size

     * 2 16550A serial port

     * 1 ECP/EPP parallel port

     * floppy interface

     * 2 embedded Ultra DMA66 IDE interface

     * 2 USB port

     * expansion: 3 32 bit PCI slots and 1 AGP2x slot

   SRM console code comes standard with the UP1100. The SRM lives in 2Mbytes
   of flash ROM.

   The machine needs ECC capable DIMMs, so 72 bit ones. This does not appear
   to be documented in the UP1100 docs. The system accesses the serial EEPROM
   on the DIMMs via the SM bus. Note that if only a single DIMM is used it
   must be installed in slot 2. This is a bit counter-intuitive.

   The UP1100 needs a 400Watt ATX power supply according to the manufacturer.
   This might be a bit overly conservative/pessimistic judging from the power
   consumption of the board & cpu. But as always you will have to take your
   expansion cards and peripherals into account. The M1535D chip contains
   power management functionality & temperature monitoring (via I2C / SM bus
   using a LM75 thermal sensor).

   The UP1100 has an on-board 21143 10/100Mbit Ethernet interface.

   The UP1100 is equipped with a SoundBlaster compatible audio interface.
   Whether it works with FreeBSD is as of yet unknown.

   The embedded Ultra DMA EIDE ports are bootable by the SRM console.

   The UP1100 has 3 USB ports, 2 going external and one connected to the AGP
   port.

   For the UP1100 the kernel config file must contain:

     options     API_UP1000      # UP1000, UP1100 (Nautilus)
     cpu EV5

   Contrary to expectation there is no cpu EV6 defined for inclusion in the
   kernel config file. The cpu EV5 is mandatory to keep config(8) happy.

     ----------------------------------------------------------------------

  2.3.19 Alpha Processor Inc. CS20

   The CS20 is a 19", 1U high rackmount server based on the 21264[ab] CPU. It
   can have a maximum of 2 CPUs.

   Features:

     * 21264a Alpha CPU at 667 MHz or 21264b 833 MHz (max. 2 CPUs)

     * memory bus: 100MHz 256-bit wide

     * 21271 Core Logic chipset (``Tsunami'')

     * Acer Labs M1533 PCI-ISA bridge controller / super-IO chip

     * PS/2 mouse & keyboard port

     * memory: 168-pin PC100 PLL buffered/registered SDRAM DIMMS, 8 DIMM
       slots, uses ECC memory, min 256 Mbytes / max 2 GBytes of memory

     * 2 16550A serial port

     * 1 ECP/EPP parallel port

     * ALI M1543C Ultra DMA66 IDE interface

     * embedded dual Intel 82559 10/100Mbit Ethernet

     * embedded Symbios 53C1000 Ultra160 SCSI controller

     * expansion: 2 64 bit PCI slots (2/3 length)

   SRM console code comes standard with the CS20. The SRM lives in 2Mbytes of
   flash ROM.

   The CS20 needs ECC capable DIMMs. Note that it uses buffered DIMMs.

   The CS20 has an I2C based internal monitoring system for things like
   temperature, fans, voltages etc. The I2C also supports ``wake on LAN''.

   Each PCI slot is connected to it's own independent PCI bus on the Tsunami.

   The embedded Ultra DMA EIDE ports are bootable by the SRM console.

   The CS20 has an embedded slim-line IDE CD drive. There is a
   front-accessible bay for a 1" high 3.5" SCSI hard-disk drive with SCA
   connector.

   Note that there is no floppy disk drive (or a connector to add one).

   The kernel config file must contain:

     options     DEC_ST6600
     cpu EV5

   Contrary to expectation there is no cpu EV6 defined for inclusion in the
   kernel config file. The cpu EV5 is mandatory to keep config(8) happy.

     ----------------------------------------------------------------------

2.4 Supported Hardware Overview

   A word of caution: the installed base for FreeBSD is not nearly as large
   as for FreeBSD/Intel. This means that the enormous variation of PCI/ISA
   expansion cards out there has much less chance of having been tested on
   alpha than on Intel. This is not to imply they are doomed to fail, just
   that the chance of running into something never tested before is much
   higher. GENERIC contains things that are known to work on Alpha only.

   The PCI and ISA expansion busses are fully supported. Turbo Channel is not
   in GENERIC and has limited support (see the relevant machine model info).
   The MCA bus is not supported. The EISA bus is not supported for use with
   EISA expansion cards as the EISA support code is lacking. ISA cards in
   EISA slots are reported to work. The Compaq Qvision EISA VGA card is
   driven in ISA mode and works OK as a console.

   1.44 Mbyte and 1.2 Mbyte floppy drives are supported. 2.88 Mbyte drives
   sometimes found in Alpha machines are supported up to 1.44Mbyte.

   ATA and ATAPI (IDE) devices are supported via the ata(4) driver framework.
   As most people run their Alphas with SCSI disks it is not as well tested
   as SCSI. Be aware of boot-ability restrictions for IDE disks. See the
   machine specific information.

   There is full SCSI support via the CAM layer for Adaptec 2940x (AIC7xxx
   chip-based), Qlogic family and Symbios. Be aware of the machine-specific
   boot-ability issues for the various adapter types.

   The Qlogic QL2x00 FibreChannel host adapters are fully supported.

   If you want to boot your Alpha over the Ethernet you will obviously need
   an Ethernet card that the SRM console recognizes. This generally means you
   need a board with an 21x4x Ethernet chip as that is what Digital used.
   These chips are driven by the FreeBSD de(4) (older driver) or dc(4) (newer
   driver). Some new SRM versions are known to recognize the Intel 8255x
   Ethernet chips as driven by the FreeBSD fxp(4) driver. But beware: the
   fxp(4) driver is reported not to work correctly with FreeBSD (although it
   works excellently on FreeBSD/x86).

   DEC DEFPA PCI FDDI network adapters are supported on alpha.

   In general the SRM console emulates a VGA-compatibility mode on PCI VGA
   cards. This is, however, not guaranteed to work by Compaq/DEC for each and
   every card type out there. When the SRM thinks the VGA is acceptable
   FreeBSD will be able to use it. The console driver works just like on a
   FreeBSD/intel machine. The TGA video graphics which is embedded on for
   example Multia does not work with FreeBSD. TGA based PCI cards are also
   not supported. Please note that VESA modes are not supported on Alpha, so
   that leaves you with 80x25 consoles.

   The ``PC standard'' serial ports found on most Alphas are supported. For
   TurboChannel machines the serial ports are also supported.

   ISDN (i4b) is not supported on FreeBSD/alpha.

     ----------------------------------------------------------------------

2.5 Acknowledgments

   In compiling this file I used multiple information sources, but the NetBSD
   Web site proved to be an invaluable source of information. If it wasn't
   for NetBSD/alpha there probably would not be a FreeBSD/alpha in the first
   place.

   People who kindly helped me create this section:

     * Andrew Gallatin <gallatin@FreeBSD.org>

     * Chuck Robey <chuckr@FreeBSD.org>

     * Matthew Jacob <mjacob@FreeBSD.org>

     * Michael Smith <msmith@FreeBSD.org>

     * David O'Brien <obrien@FreeBSD.org>

     * Christian Weisgerber

     * Kazutaka YOKOTA

     * Nick Maniscalco

     * Eric Schnoebelen

     * Peter van Dijk

     * Peter Jeremy

     * Dolf de Waal

     * Wim Lemmers, ex-Compaq

     * Wouter Brackman, Compaq

     * Lodewijk van den Berg, Compaq

     ----------------------------------------------------------------------

                              3 Supported Devices

   $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v
   1.13.2.14 2001/09/06 23:17:00 bmah Exp $

   This section describes the devices currently known to be supported by with
   FreeBSD on the alpha platform. Other configurations may also work, but
   simply have not been tested yet. Feedback, updates, and corrections to
   this list are encouraged.

   Where possible, the drivers applicable to each device or class of devices
   is listed. If the driver in question has a manual page in the FreeBSD base
   distribution (most should), it is referenced here.

     ----------------------------------------------------------------------

3.1 Disk Controllers

   IDE/ATA controllers (ata(4) driver)

     * Acerlabs Aladdin

     * AMD 756

     * CMD 646, 648 ATA66, and 649 ATA100

     * Cypress 82C693

     * Cyrex 5530

     * HighPoint HPT366, HPT370

     * Intel PIIX, PIIX3, PIIX4

     * Intel ICH, ICH2

     * Promise ATA100 OEM chip (pdc20265)

     * Promise Fasttrak-33, -66, -100

     * Promise Ultra-33, -66, -100

     * ServerWorks ROSB4 ATA33

     * SiS 5591

     * VIA 82C586, 82C686a, 82C686b

   Adaptec SCSI Controllers

     * Adaptec 1535 ISA SCSI controllers

     * Adaptec 154x series ISA SCSI controllers (aha(4) driver)

     * Adaptec
       19160/274x/284x/291x/2920/2930/2940/2950/29160/3940/3950/3960/39160/398x/494x
       series EISA/VLB/PCI SCSI controllers, including
       Narrow/Wide/Twin/Ultra/Ultra2 variants (ahc(4) driver)

     * Adaptec AIC7770, AIC7850, AIC7860, AIC7870, AIC7880, and AIC789x
       on-board SCSI controllers (ahc(4) driver)

   AdvanSys SCSI controllers (all models, adv(4) and adw(4) drivers)

   BusLogic MultiMaster ``W'' Series Host Adapters (bt(4) driver):

     * BT-948

     * BT-958

     * BT-958D

   BusLogic MultiMaster ``C'' Series Host Adapters (bt(4) driver):

     * BT-946C

     * BT-956C

     * BT-956CD

     * BT-445C

     * BT-747C

     * BT-757C

     * BT-757CD

     * BT-545C

     * BT-540CF

   BusLogic MultiMaster ``S'' Series Host Adapters (bt(4) driver):

     * BT-445S

     * BT-747S

     * BT-747D

     * BT-757S

     * BT-757D

     * BT-545S

     * BT-542D

     * BT-742A

     * BT-542B

   BusLogic MultiMaster ``A'' Series Host Adapters (bt(4) driver):

     * BT-742A

     * BT-542B

     Note: BusLogic/Mylex ``Flashpoint'' adapters are not yet supported.

     Note: AMI FastDisk controllers that are true BusLogic MultiMaster clones
     are also supported.

   DPT SmartCACHE Plus, SmartCACHE III, SmartRAID III, SmartCACHE IV and
   SmartRAID IV SCSI/RAID controllers (dpt(4) driver)

   AMI MegaRAID Express and Enterprise family RAID controllers (amr(4)
   driver)

     * MegaRAID Series 418

     * MegaRAID Enterprise 1200 (Series 428)

     * MegaRAID Enterprise 1300 (Series 434)

     * MegaRAID Enterprise 1400 (Series 438)

     * MegaRAID Enterprise 1500 (Series 467)

     * MegaRAID Enterprise 1600 (Series 471)

     * MegaRAID Elite 1500 (Series 467)

     * MegaRAID Elite 1600 (Series 493)

     * MegaRAID Express 100 (Series 466WS)

     * MegaRAID Express 200 (Series 466)

     * MegaRAID Express 300 (Series 490)

     * MegaRAID Express 500 (Series 475)

     * Dell PERC

     * Dell PERC 2/SC

     * Dell PERC 2/DC

     * Dell PERC 3/DCL

     * HP NetRaid-1si

     * HP NetRaid-3si

     * HP Embedded NetRaid

     Note: Booting from these controllers is not supported due to SRM
     limitations.

   Mylex DAC960 and DAC1100 RAID controllers with 2.x, 3.x, 4.x and 5.x
   firmware (mlx(4) driver)

     * DAC960P

     * DAC960PD

     * DAC960PDU

     * DAC960PL

     * DAC960PJ

     * DAC960PG

     * AcceleRAID 150

     * AcceleRAID 250

     * eXtremeRAID 1100

     Note: Booting from these controllers is supported. EISA adapters are not
     supported.

     Booting from these controllers is not supported due to SRM limitations.
     This list includes controllers sold by Digital/Compaq in Alpha systems
     in the StorageWorks family, e.g. KZPSC or KZPAC.

     Note: Compatible Mylex controllers not listed should work, but have not
     been verified.

   3ware Escalade ATA RAID controllers (twe(4) driver)

     * 5000 series

   LSI/SymBios (formerly NCR) 53C810, 53C810a, 53C815, 53C825, 53C825a,
   53C860, 53C875, 53C875a, 53C876, 53C885, 53C895, 53C895a, 53C896,
   53C1010-33, 53C1010-66, 53C1000, 53C1000R PCI SCSI controllers, either
   embedded on motherboard or on add-on boards (ncr(4) and sym(4) drivers)

     * ASUS SC-200, SC-896

     * Data Technology DTC3130 (all variants)

     * DawiControl DC2976UW

     * Diamond FirePort (all)

     * NCR cards (all)

     * Symbios cards (all)

     * Tekram DC390W, 390U, 390F, 390U2B, 390U2W, 390U3D, and 390U3W

     * Tyan S1365

   Qlogic controllers and variants (isp(4) driver)

     * Qlogic 1020, 1040 SCSI and Ultra SCSI host adapters

     * Qlogic 1240 dual Ultra SCSI controllers

     * Qlogic 1080 Ultra2 LVD and 1280 Dual Ultra2 LVD controllers

     * Qlogic 12160 Ultra3 LVD controllers

     * Qlogic 2100 and Qlogic 2200 Fibre Channel SCSI controllers

     * Performance Technology SBS440 ISP1000 variants

     * Performance Technology SBS450 ISP1040 variants

     * Performance Technology SBS470 ISP2100 variants

     * Antares Microsystems P-0033 ISP2100 variants

   Tekram DC390 and DC390T controllers, maybe other cards based on the AMD
   53c974 as well (amd(4) driver)

   With all supported SCSI controllers, full support is provided for SCSI-I,
   SCSI-II, and SCSI-III peripherals, including hard disks, optical disks,
   tape drives (including DAT, 8mm Exabyte, Mammoth, and DLT), medium
   changers, processor target devices and CD-ROM drives. WORM devices that
   support CD-ROM commands are supported for read-only access by the CD-ROM
   drivers (such as cd(4)). WORM/CD-R/CD-RW writing support is provided by
   cdrecord(1), which is a part of the sysutils/cdrtools port in the Ports
   Collection.

   The following CD-ROM type systems are supported at this time:

     * SCSI interface (also includes ProAudio Spectrum and SoundBlaster SCSI)
       (cd(4))

     * ATAPI IDE interface (acd(4))

     ----------------------------------------------------------------------

3.2 Ethernet Interfaces

   Adaptec Duralink PCI Fast Ethernet adapters based on the Adaptec AIC-6915
   Fast Ethernet controller chip (sf(4) driver)

     * ANA-62011 64-bit single port 10/100baseTX adapter

     * ANA-62022 64-bit dual port 10/100baseTX adapter

     * ANA-62044 64-bit quad port 10/100baseTX adapter

     * ANA-69011 32-bit single port 10/100baseTX adapter

     * ANA-62020 64-bit single port 100baseFX adapter

   Alteon Networks PCI Gigabit Ethernet NICs based on the Tigon 1 and Tigon 2
   chipsets (ti(4) driver)

     * 3Com 3c985-SX (Tigon 1 and 2)

     * Alteon AceNIC (Tigon 1 and 2)

     * Alteon AceNIC 1000baseT (Tigon 2)

     * Asante PCI 1000BASE-SX Gigabit Ethernet Adapter

     * Asante GigaNIX1000T Gigabit Ethernet Adapter

     * DEC/Compaq EtherWORKS 1000

     * Farallon PN9000SX

     * NEC Gigabit Ethernet

     * Netgear GA620 (Tigon 2)

     * Netgear GA620T (Tigon 2, 1000baseT)

     * Silicon Graphics Gigabit Ethernet

   AMD PCnet NICs (lnc(4) and pcn(4) drivers)

     * AMD PCnet/PCI (79c970 & 53c974 or 79c974)

     * AMD PCnet/FAST

     * PCnet/FAST+

     * PCnet/FAST III

     * PCnet/PRO

     * PCnet/Home

     * HomePNA

   RealTek 8129/8139 Fast Ethernet NICs (rl(4) driver)

     * Accton ``Cheetah'' EN1207D (MPX 5030/5038; RealTek 8139 clone)

     * Allied Telesyn AT2550

     * Allied Telesyn AT2500TX

     * D-Link DFE-538TX

     * Genius GF100TXR (RTL8139)

     * KTX-9130TX 10/100 Fast Ethernet

     * NDC Communications NE100TX-E

     * Netronix Inc. EA-1210 NetEther 10/100

     * OvisLink LEF-8129TX

     * OvisLink LEF-8139TX

     * SMC EZ Card 10/100 PCI 1211-TX

   Lite-On 82c168/82c169 PNIC Fast Ethernet NICs (dc(4) driver)

     * Kingston KNE110TX

     * LinkSys EtherFast LNE100TX

     * Matrox FastNIC 10/100

     * NetGear FA310-TX Rev. D1

   Macronix 98713, 98713A, 98715, 98715A and 98725 Fast Ethernet NICs (dc(4)
   driver)

     * Accton EN1217 (98715A)

     * Adico AE310TX (98715A)

     * Compex RL100-TX (98713 or 98713A)

     * CNet Pro120A (98713 or 98713A)

     * CNet Pro120B (98715)

     * NDC Communications SFA100A (98713A)

     * SVEC PN102TX (98713)

   Macronix/Lite-On PNIC II LC82C115 Fast Ethernet NICs (dc(4) driver)

     * LinkSys EtherFast LNE100TX Version 2

   Winbond W89C840F Fast Ethernet NICs (wb(4) driver)

     * Trendware TE100-PCIE

   VIA Technologies VT3043 ``Rhine I'' and VT86C100A ``Rhine II'' Fast
   Ethernet NICs (vr(4) driver)

     * AOpen/Acer ALN-320

     * D-Link DFE-530TX

     * Hawking Technologies PN102TX

   Silicon Integrated Systems SiS 900 and SiS 7016 PCI Fast Ethernet NICs
   (sis(4) driver)

   National Semiconductor DP83815 Fast Ethernet NICs (sis(4) driver)

     * NetGear FA311-TX

     * NetGear FA312-TX

   National Semiconductor DP83820 and DP83821 Gigabit Ethernet NICs (nge(4)
   driver)

     * Addtron AEG320T

     * Asante FriendlyNet GigaNIC 1000TA and 1000TPC

     * D-Link DGE-500T

     * LinkSys EG1032 (32-bit PCI) and EG1064 (64-bit PCI)

     * Netgear GA622T

     * SMC EZ Card 1000 (SMC9462TX)

     * Surecom Technology EP-320G-TX

   Sundance Technologies ST201 PCI Fast Ethernet NICs (ste(4) driver)

     * D-Link DFE-550TX

   SysKonnect SK-984x PCI Gigabit Ethernet cards (sk(4) drivers)

     * SK-9821 1000baseT copper, single port

     * SK-9822 1000baseT copper, dual port

     * SK-9841 1000baseLX single mode fiber, single port

     * SK-9842 1000baseLX single mode fiber, dual port

     * SK-9843 1000baseSX multimode fiber, single port

     * SK-9844 1000baseSX multimode fiber, dual port

   Texas Instruments ThunderLAN PCI NICs (tl(4) driver)

     * Compaq Netelligent 10, 10/100, 10/100 Proliant, 10/100 Dual-Port

     * Compaq Netelligent 10/100 TX Embedded UTP, 10 T PCI UTP/Coax, 10/100
       TX UTP

     * Compaq NetFlex 3P, 3P Integrated, 3P w/BNC

     * Olicom OC-2135/2138, OC-2325, OC-2326 10/100 TX UTP

     * Racore 8165 10/100baseTX

     * Racore 8148 10baseT/100baseTX/100baseFX multi-personality

   ADMtek Inc. AL981-based PCI Fast Ethernet NICs (dc(4) driver)

   ADMtek Inc. AN985-based PCI Fast Ethernet NICs (dc(4) driver)

     * LinkSys EtherFast LNE100TX v4.0/4.1

   ADMtek Inc. AN986-based USB Ethernet NICs (aue(4) driver)

     * Billionton USB100

     * D-Link DSB-650TX

     * LinkSys USB100TX

     * Melco Inc. LUA-TX

     * SMC 2202USB

   CATC USB-EL1210A-based USB Ethernet NICs (cue(4) driver)

     * Belkin F5U011

     * Belkin F5U111

     * CATC Netmate

     * CATC Netmate II

   Kawasaki LSI KU5KUSB101B-based USB Ethernet NICs (kue(4) driver)

     * 3Com 3c19250

     * Abocom URE 450

     * ADS Technologies USB-10BT

     * ATen UC10T

     * Corega USB-T

     * D-Link DSB-650

     * Entrega NET-USB-E45

     * LinkSys USB10T

     * Netgear EA101

     * Peracom USB Ethernet Adapter

     * SMC 2102USB

     * SMC 2104USB

   ASIX Electronics AX88140A PCI NICs (dc(4) driver)

     * Alfa Inc. GFC2204

     * CNet Pro110B

   DEC DC21040, DC21041, DC21140, DC21141, DC21142, and DC21143 based NICs
   (de(4) driver)

     * Asante

     * Cogent EM100FX and EM440TX

     * DEC DE425, DE435, DE450, and DE500

     * SMC Etherpower 8432T, 9332, and 9334

     * ZYNX ZX 3xx

   DEC/Intel 21143 based Fast Ethernet NICs (dc(4) driver)

     * DEC DE500-BA

     * Compaq Presario 7900 series built-in Ethernet

     * D-Link DFE-570TX

     * Kingston KNE100TX

     * LinkSys EtherFast 10/100 Instant GigaDrive built-in Ethernet

   Davicom DM9100 and DM9102 PCI Fast Ethernet NICs (dc(4) driver)

     * Jaton Corporation XpressNet

   Intel EtherExpress NICs

     * Intel EtherExpress Pro/100B PCI Fast Ethernet (fxp(4) driver)

     * Intel PRO/1000, PRO/1000-F, and PRO/1000-T Gigabit Ethernet (wx(4)
       driver)

     * Intel InBusiness 10/100 PCI Network Adapter (fxp(4) driver)

     * Intel PRO/100+ Management Adapter (fxp(4) driver)

   Isolan AT 4141-0 (16 bit)

   Isolink 4110 (8 bit)

   Novell NE1000, NE2000, and NE2100 Ethernet interface (ed(4) driver)

   Novell NE2000 clones (ed(4) driver)

     * NetVin 5000

     * RealTek 8029

     * Surecom NE-34

     * VIA VT86C926

     * Winbond W89C940

   3Com Ethernet and Fast Ethernet NICs

     * 3C450-TX HomeConnect adapter (xl(4) driver)

     * 3C503 Etherlink II (ed(4) driver)

     * 3C589/589B/589C/589D/589E/XE589ET/574TX/574B PC-card/PCMCIA (ep(4)
       driver)

     * 3C900/905/905B/905C PCI (xl(4) driver)

     * 3C556/556B MiniPCI (xl(4) driver)

     * EISA (Fast) Etherlink III / (Fast) Etherlink XL

     * 3c980/3c980B Fast Etherlink XL server adapter (xl(4) driver)

     * 3cSOHO100-TX OfficeConnect adapter (xl(4) driver)

   Gigabit Ethernet cards based on the Level 1 LXT1001 NetCellerator
   controller (lge(4) driver)

     * D-Link DGE-500SX

     * SMC TigerCard 1000 (SMC9462SX)

   Ethernet and Fast Ethernet NICs based on the 3Com 3XP Typhoon/Sidewinder
   (3CR990) chipset (txp(4) driver)

     * 3Com 3CR990-TX-95

     * 3Com 3CR990-TX-97

     * 3Com 3CR990B-SRV

     * 3Com 3CR990B-TXM

     * 3Com 3CR990SVR95

     * 3Com 3CR990SVR97

     ----------------------------------------------------------------------

3.3 FDDI Interfaces

   DEC DEFPA/DEFEA FDDI NICs (fpa(4) driver)

     ----------------------------------------------------------------------

3.4 ATM Interfaces

   Efficient Networks, Inc. ENI-155p ATM PCI Adapters (hea driver)

   FORE Systems, Inc. PCA-200E ATM PCI Adapters (hfa driver)

   The ATM support in FreeBSD supports the following signaling protocols:

     * The ATM Forum UNI 3.1 signaling protocol

     * The ATM Forum UNI 3.0 signaling protocol

     * The ATM Forum ILMI address registration

     * FORE Systems' proprietary SPANS signaling protocol

     * Permanent Virtual Channels (PVCs)

   Support for the IETF ``Classical IP and ARP over ATM'' model is provided,
   compliant with the following RFCs and Internet Drafts:

     * RFC 1483, ``Multiprotocol Encapsulation over ATM Adaptation Layer 5''

     * RFC 1577, ``Classical IP and ARP over ATM''

     * RFC 1626, ``Default IP MTU for use over ATM AAL5''

     * RFC 1755, ``ATM Signaling Support for IP over ATM''

     * RFC 2225, ``Classical IP and ARP over ATM''

     * RFC 2334, ``Server Cache Synchronization Protocol (SCSP)''

     * Internet Draft draft-ietf-ion-scsp-atmarp-00.txt, ``A Distributed
       ATMARP Service Using SCSP''

   Support for an ATM sockets interface is also provided.

     ----------------------------------------------------------------------

3.5 Wireless Network Interfaces

   Aironet 802.11 wireless adapters (an(4) driver)

     * Aironet 4500/4800 series (PCMCIA, PCI, and ISA adapters are all
       supported)

     * Cisco Systems Aironet 340, 341, and 342

   AMD Am79C930 and Harris (Intersil) based 802.11 cards (awi driver)

     * BayStack 650 and 660

     * Farallon SkyLINE Wireless

     * Icom SL-200

     * Melco WLI-PCM

     * NEL SSMagic

     * Netwave AirSurfer Plus and AirSurfer Pro

     * ZoomAir 4000

     ----------------------------------------------------------------------

3.7 Multi-port Serial Interfaces

   AST 4 port serial card using shared IRQ

   Boca multi-port serial cards

     * Boca BB1004 4-Port serial card (Modems not supported)

     * Boca IOAT66 6-Port serial card (Modems supported)

     * Boca BB1008 8-Port serial card (Modems not supported)

     * Boca BB2016 16-Port serial card (Modems supported)

   STB 4 port card using shared IRQ

   DigiBoard intelligent serial cards (dgb(4) driver)

     * DigiBoard PC/Xe series

     * DigiBoard PC/Xi series

   Specialix SI/XIO/SX multiport serial cards, with both the older SIHOST2.x
   and the new ``enhanced'' (transputer based, aka JET) host cards (ISA, EISA
   and PCI are supported) (si(4) driver)

     ----------------------------------------------------------------------

3.8 Audio Devices

   Advance (sbc(4) driver)

     * Asound 100 and 110

     * Logic ALS120 and ALS4000

   CMedia sound chips

     * CMI8338/CMI8738

   Crystal Semiconductor (csa(4) driver)

     * CS461x/462x Audio Accelerator

     * CS428x Audio Controller

   ENSONIQ (pcm(4) driver)

     * AudioPCI ES1370/1371

   ESS

     * ES1868, ES1869, ES1879 and ES1888 (sbc(4) driver)

     * Maestro-1, Maestro-2, and Maestro-2E

     * Maestro-3/Allegro

         Note: The Maestro-3/Allegro cannot be compiled into the FreeBSD
         kernel due to licensing restrictions, it cannot be compiled into the
         kernel. To use this driver, add the following line to
         /boot/loader.conf:

     maestro3_load="YES"

   ForteMedia fm801

   Gravis (gusc(4) driver)

     * UltraSound MAX

     * UltraSound PnP

   MSS/WSS Compatible DSPs (pcm(4) driver)

   NeoMagic 256AV/ZX (pcm(4) driver)

   OPTi 931/82C931 (pcm(4) driver)

   S3 Sonicvibes

   Creative Technologies SoundBlaster series (sbc(4) driver)

     * SoundBlaster

     * SoundBlaster Pro

     * SoundBlaster AWE-32

     * SoundBlaster AWE-64

     * SoundBlaster AWE-64 GOLD

     * SoundBlaster ViBRA-16

   Trident 4DWave DX/NX (pcm(4) driver)

   VIA Technologies VT82C686A

   Yamaha

     * DS1

     * DS1e

     ----------------------------------------------------------------------

3.9 Camera and Video Capture Devices

   Brooktree Bt848/849/878/879-based frame grabbers (bktr(4) driver)

     * AverMedia cards

     * Hauppauge Wincast TV and WinTV boards (PCI)

     * Intel Smart Video Recorder III

     * Miro PC TV

     * STB TV PCI

     * Video Highway XTreme

     * VideoLogic Captivator PCI

   Connectix QuickCam

   Matrox Meteor Video frame grabber (meteor(4) driver)

     ----------------------------------------------------------------------

3.10 USB Devices

   A range of USB peripherals are supported; devices known to work are listed
   in this section. Owing to the generic nature of most USB devices, with
   some exceptions any device of a given class will be supported, even if not
   explicitly listed here.

     Note: USB Ethernet adapters can be found in the section listing Ethernet
     interfaces.

   Host Controllers (ohci(4) and uhci(4) drivers)

     * ALi Aladdin-V

     * AMD-756

     * CMD Tech 670 & 673

     * Intel 82371SB (PIIX3)

     * Intel 82371AB and EB (PIIX4)

     * Intel 82801AA (ICH)

     * Intel 82801AB (ICH0)

     * Intel 82801BA/BAM (ICH2)

     * Intel 82443MX

     * NEC uPD 9210

     * OPTi 82C861 (FireLink)

     * SiS 5571

     * VIA 83C572 USB

     * UHCI or OHCI compliant motherboard chipsets (no exceptions known)

   USB host controllers (PCI)

     * ADS Electronics PCI plug-in card (2 ports)

     * Entrega PCI plug-in card (4 ports)

   Hubs

     * Andromeda hub

     * MacAlly self powered hub (4 ports)

     * NEC hub

   Keyboards (ukbd(4) driver)

     * Apple iMac keyboard

     * BTC BTC7935 keyboard with PS/2 mouse port

     * Cherry G81-3504 keyboard

     * Logitech M2452 keyboard

     * MacAlly iKey keyboard

     * Microsoft keyboard

   Miscellaneous

     * ActiveWire I/O Board

     * Rio500 MP3 player (urio(4) driver)

   Modems (umodem driver)

     * 3Com 5605

     * Metricom Ricochet GS USB wireless modem

   Mice (ums(4) driver)

     * Agiler Mouse 29UO

     * Apple iMac Mouse

     * Belkin Mouse

     * Chic mouse

     * Cypress mouse

     * Genius Niche mouse

     * Kensington Mouse-in-a-Box

     * Logitech wheel mouse (3 buttons)

     * Logitech PS/2 / USB mouse (3 buttons)

     * MacAlly mouse (3 buttons)

     * Microsoft IntelliMouse (3 buttons)

     * Trust Ami Mouse (3 buttons)

   Printers and parallel printer conversion cables (ulpt driver)

     * ATen parallel printer adapter

     * Belkin F5U002 parallel printer adapter

     * Entrega USB-to-parallel printer adapter

   Scanners (through SANE) (uscanner(4) driver)

     * Perfection 636U

     * HP ScanJet 4100C, 5200C, 6300C

   Storage (umass(4) driver)

     * Iomega USB Zip 100Mb (primitive support still)

     * Matshita CF-VFDU03 floppy drive

     * Microtech USB-SCSI-HD 50 USB to SCSI cable

     * Panasonic floppy drive

     * Y-E Data floppy drive (720/1.44/2.88Mb)

     ----------------------------------------------------------------------

3.11 Miscellaneous

   Floppy drives (fd(4) driver)

   Genius and Mustek hand scanners

   GPB and Transputer drivers

   HP4020, HP6020, Philips CDD2000/CDD2660 and Plasmon CD-R drives

   Keyboards including:

     * AT-style keyboards

     * PS/2 keyboards

   Loran-C receiver (Dave Mills experimental hardware, loran driver).

   Mice including:

     * PS/2 mice (psm(4) driver)

     * Serial mice

   Parallel ports

   PC-compatible joysticks (joy(4) driver)

   Serial ports

   Xilinx XC6200-based reconfigurable hardware cards compatible with the HOT1
   from Virtual Computers (xrpu driver).

     ----------------------------------------------------------------------

                        4 Boot-time Kernel Configuration

   This section describes the boot-time configuration of the FreeBSD kernel.

     ----------------------------------------------------------------------

4.1 Default Configuration

   The following table contains a list of all of the devices that are present
   in the GENERIC kernel. This is the essential part of the operating system
   that is placed in your root partition during the installation process. A
   compressed version of the GENERIC kernel is also used on the installation
   floppy diskette and DOS boot image.

   The table describes the various parameters used by the driver to
   communicate with the hardware in your system. There are four parameters in
   the table, though not all are used by each and every device:

   Port  The starting I/O port used by the device, shown in hexadecimal.      
   IRQ   The interrupt the device uses to alert the driver to an event, given 
         in decimal.                                                          
   DRQ   The DMA (direct memory access) channel the device uses to move data  
         to and from main memory, also given in decimal.                      
   IOMem The lowest (or starting) memory address used by the device, also     
         shown in hexadecimal.                                                

   If an entry in the table has `n/a' for a value then it means that the
   parameter in question does not apply to that device. A value of `dyn'
   means that the correct value should be determined automatically by the
   kernel when the system boots and that you don't need to worry about it.

   If an entry is marked with an *, it means that support is currently not
   available for it but should be back as soon as someone converts the driver
   to work within the new (post-4.0) framework.

   Device   Port  IRQ DRQ IOMem Description                                   
   fdc0     3f0   6   2   n/a   Floppy disk controller                        
   ata0     170   14  n/a n/a   ATA/ATAPI controller                          
   ata1     170   15  n/a n/a   ATA/ATAPI controller                          
   atadisk0 n/a   n/a n/a n/a   ATA disk drives                               
   atapicd0 n/a   n/a n/a n/a   ATAPI CDROM drives                            
   atapifd0 n/a   n/a n/a n/a   ATAPI floppy drives                           
   atapist0 n/a   n/a n/a n/a   ATAPI tape drives                             
   adv0     n/a   n/a n/a n/a   AdvanSys Narrow SCSI controllers              
   adw0     n/a   n/a n/a n/a   AdvanSys Wide SCSI controllers                
   amd0     n/a   n/a n/a n/a   AMD 53C974 (Tekram DC390(T))                  
   ncr0     n/a   n/a n/a n/a   NCR PCI SCSI controller                       
   bt0      330   dyn dyn dyn   Buslogic SCSI controller                      
   aha0     330   dyn 5   dyn   Adaptec 154x/1535 SCSI controller             
   ahb0     dyn   dyn dyn dyn   Adaptec 174x SCSI controller                  
   ahc0     dyn   dyn dyn dyn   Adaptec 274x/284x/294x SCSI controller        
   aic0     340   11  dyn dyn   Adaptec 152x/AIC-6360/AIC-6260 SCSI           
                                controller                                    
   isp0     dyn   dyn dyn dyn   QLogic 10X0, 1240 Ultra SCSI, 1080/1280       
                                Ultra2 SCSI, 12160 Ultra3 SCSI, 2X00 Fibre    
                                Channel SCSI controller                       
   dpt0     dyn   dyn n/a n/a   DPT RAID SCSI controllers                     
   amr0     dyn   dyn n/a n/a   AMI MegaRAID controllers                      
   mlx0     dyn   dyn n/a dyn   Mylex DAC960 RAID controllers                 
   twe0     dyn   dyn n/a n/a   3ware Escalade RAID controllers               
   asr0     dyn   dyn dyn dyn   DPT SmartRaid V, VI, and Adaptec SCSI RAID    
   mly0     dyn   dyn dyn dyn   Mylex AcceleRAID/eXtremeRAID                  
   aac      dyn   dyn dyn dyn   Adaptec FSA family PCI SCSI RAID              
   ncv      dyn   dyn n/a n/a   NCR 53C500 based PC-Card SCSI                 
   nsp      dyn   dyn n/a dyn   Workbit Ninja SCSI-3 based PC-Card SCSI       
   stg      dyn   dyn n/a n/a   TMC 18C30/50 based ISA/PC-Card SCSI           
   wt0      300   5   1   dyn   Wangtek and Archive QIC-02/QIC-36             
   psm0     60    12  n/a n/a   PS/2 Mouse                                    
   mcd0     300   10  n/a n/a   Mitsumi CD-ROM                                
   matcd0   230   n/a n/a n/a   Matsushita/Panasonic CD-ROM                   
   scd0     230   n/a n/a n/a   Sony CD-ROM                                   
   sio0     3f8   4   n/a n/a   Serial Port 0 (COM1)                          
   sio1     2f8   3   n/a n/a   Serial Port 1 (COM2)                          
   ppc0     dyn   7   n/a n/a   Printer ports                                 
   dc0      n/a   n/a n/a n/a   DEC/Intel 21143 cards and workalikes          
   de0      n/a   n/a n/a n/a   DEC DC21x40 PCI based cards (including 21140  
                                100bT cards)                                  
   ed0      280   10  dyn d8000 WD & SMC 80xx; Novell NE1000 & NE2000; 3Com   
                                3C503; HP PC Lan+                             
   ep0      300   10  dyn dyn   3Com 3C509, 3C529, 3C556, 3C562D, 3C563D,     
                                3C572, 3C574X, 3C579, 3C589                   
   ex0      dyn   dyn dyn n/a   Intel EtherExpress Pro/10 cards               
   fe0      300   dyn n/a n/a   Allied-Telesyn AT1700, RE2000 and Fujitsu     
                                FMV-180 series cards.                         
   fxp0     dyn   dyn n/a dyn   Intel EtherExpress Pro/100B and Intel         
                                PRO/100+ Management Adapter                   
   ie0      300   10  dyn d0000 AT&T StarLAN 10 and EN100; 3Com 3C507;        
                                NI5210; Intel EtherExpress (8/16,16[TP])      
                                cards                                         
   le0      300   5   dyn d0000 Digital Equipment EtherWorks 2 and EtherWorks 
                                3                                             
   lnc0     280   10  n/a dyn   Lance/PCnet cards (Isolan, Novell NE2100,     
                                NE32-VL, some PCnet-PCI cards)                
   pcn0     dyn   dyn n/a dyn   AMD PCnet/FAST, PCnet/FAST+, PCnet/FAST III,  
                                PCnet/PRO, PCnet/Home, and HomePNA cards      
   rl0      dyn   dyn n/a dyn   RealTek 8129/8139 fast ethernet               
   sf0      dyn   dyn n/a dyn   Adaptec AIC-6915 fast ethernet                
   sis0     dyn   dyn n/a dyn   SiS 900/SiS 7016 fast ethernet                
   sn0      0x300 10  n/a n/a   SMC 91xx ethernet                             
   ste0     dyn   dyn n/a dyn   Sundance ST201 fast ethernet                  
   tl0      dyn   dyn n/a dyn   TI TNET100 'ThunderLAN' cards.                
   tx0      dyn   dyn n/a dyn   SMC 9432 'Epic' fast ethernet                 
   wb0      dyn   dyn n/a dyn   Winbond W89C840F PCI based cards.             
   vr0      dyn   dyn n/a dyn   VIA VT3043/VT86C100A PCI based cards.         
   vx0      dyn   dyn n/a dyn   3Com 3c59x ((Fast) Etherlink III)             
   xe0      dyn   dyn n/a dyn   Xircom CreditCard adapters (16 bit)           
   xl0      dyn   dyn n/a dyn   3Com 3c900, 3c905, 3c905B, 3c905C, 3c980,     
                                3cSOHO100 ((Fast) Etherlink XL)               
   cs0      0x300 dyn n/a n/a   Crystal Semiconductor CS89x0-based cards.     

   If the hardware in your computer is not set to the same settings as those
   shown in the table and the item in conflict is not marked 'dyn', you will
   have to either reconfigure your hardware or use UserConfig to reconfigure
   the kernel to match the way your hardware is currently set (see the next
   section).

   If the settings do not match, the kernel may be unable to locate or
   reliably access the devices in your system.

     ----------------------------------------------------------------------

4.2 Using UserConfig to change FreeBSD kernel settings

     Note: The markup for this section leaves a lot to be desired.

   The FreeBSD kernel on the install floppy contains drivers for every piece
   of hardware that could conceivably be used to install the rest of the
   system with. Unfortunately, PC hardware being what it is, some of these
   devices can be difficult to detect accurately, and for some, the process
   of detecting another can cause irreversible confusion.

   To make this process easier, FreeBSD provides UserConfig. With this tool
   the user can configure and disable device drivers before the kernel is
   loaded, avoiding potential conflicts, and eliminating the need to
   reconfigure hardware to suit the default driver settings.

   Once FreeBSD is installed, it will remember the changes made using
   UserConfig, so that they only need be made once.

   It is important to disable drivers that are not relevant to a system in
   order to minimize the possibility of interference, which can cause
   problems that are difficult to track down.

   UserConfig features a command line interface for users with serial
   consoles or a need to type commands, and a full screen ``visual''
   interface, which provides point-and-shoot configuration functionality.

   Here is a sample UserConfig screen shot in ``visual'' mode:

     ---Active Drivers---------------------------10 Conflicts------Dev---IRQ--Port--
      Storage :  (Collapsed)
      Network :
       NE1000,NE2000,3C503,WD/SMC80xx Ethernet adapters    CONF  ed0       5  0x280
       NE1000,NE2000,3C503,WD/SMC80xx Ethernet adapters    CONF  ed1       5  0x300
      Communications : (Collapsed)
      Input : (Collapsed)
      Multimedia :
     ---Inactive Drivers-------------------------------------------Dev--------------
      Storage :
      Network : (Collapsed)
      Communications :
      Input :
      Multimedia :
    
    
     ---Parameters-for-device-ed0---------------------------------------------------
      Port address : 0x280      Memory address : 0xd8000
      IRQ number   : 5          Memory size    : 0x2000
      Flags        : 0x0000
     -------------------------------------------------------------------------------
       IO Port address (Hexadecimal, 0x1-0x2000)
       [TAB]   Change fields           [Q]   Save device parameters

   The screen is divided into four sections:

     * Active Drivers. Listed here are the device drivers that are currently
       enabled, and their basic parameters.

     * Inactive Drivers. These drivers are present, but are disabled.

     * Parameter edit field. This area is used for editing driver parameters.

     * Help area. Keystroke help is displayed here.

   One of the Active and Inactive lists is always in use, and the current
   entry in the list will be shown with a highlight bar. If there are more
   entries in a list than can be shown, it will scroll. The bar can be moved
   up and down using the cursor keys, and moved between lists with the TAB
   key.

   Drivers in the Active list may be marked CONF. This indicates that one or
   more of their parameters conflicts with another device, and indicates a
   potential for problems. The total number of conflicts is displayed at the
   top of the screen.

   As a general rule, conflicts should be avoided, either by disabling
   conflicting devices that are not present in the system, or by altering
   their configuration so that they match the installed hardware.

   In the list areas, drivers are grouped by their basic function. Groups can
   be Collapsed to simplify the display (this is the default state for all
   groups). If a group is collapsed, it will be shown with Collapsed in the
   list, as above. To Expand a Collapsed group, position the highlight bar
   over the group heading and press Enter. To Collapse it again, repeat the
   process.

   When a device driver in the Active list is highlighted, its full
   parameters are displayed in the Parameter edit area. Note that not all
   drivers use all possible parameters, and some hardware supported by
   drivers may not use all the parameters the driver supports.

   To disable a driver, go to the Active list, Expand the group it is in,
   highlight the driver and press Del. The driver will move to its group in
   the Inactive list. (If the group is collapsed or off the screen, you may
   not see the driver in its new location.)

   To enable a driver, go to the Inactive list, Expand the group it is in,
   highlight the driver and press Enter. The highlight will move to the
   Active list, and the driver you have just enabled will be highlighted,
   ready to be configured.

   To configure a driver, go to the Active list, Expand the group it is in,
   highlight the driver and press Enter. The cursor will move to the
   Parameter edit area, and the device's parameters may be edited.

   While editing parameters, the TAB and cursor keys can be used to move
   between fields. Most numeric values (except IRQ) are entered in
   hexadecimal, as indicated by the '0x' at the beginning of the field. The
   allowable values for a given field are show in the Key Help area when the
   field is active.

   To finish configuring a driver, press 'Q'.

   Note that PCI, Microchannel and EISA devices can be probed reliably,
   therefore they are not shown in the table above nor can their settings be
   changed using UserConfig.

     ----------------------------------------------------------------------

     This file, and other release-related documents, can be downloaded from
                      ftp://ftp.FreeBSD.org/pub/FreeBSD/.

     For questions about FreeBSD, read the documentation before contacting
                            <questions@FreeBSD.org>.

   All users of FreeBSD 4-STABLE should subscribe to the <stable@FreeBSD.org>
                                 mailing list.

       For questions about this documentation, e-mail <doc@FreeBSD.org>.
