From 11f780a34a0d577e5740c19afe02519765d52bee Mon Sep 17 00:00:00 2001 From: Wilko Bulte <wilko@FreeBSD.org> Date: Sun, 16 Jan 2000 13:18:08 +0000 Subject: [PATCH] ALPHAHW.TXT described the supported machine types for FreeBSD/alpha along with their quirks along with generic info on things like SRM, bootable adapters etc. --- release/texts/alpha/ALPHAHW.TXT | 974 ++++++++++++++++++++++++++++++++ 1 file changed, 974 insertions(+) create mode 100644 release/texts/alpha/ALPHAHW.TXT diff --git a/release/texts/alpha/ALPHAHW.TXT b/release/texts/alpha/ALPHAHW.TXT new file mode 100644 index 000000000000..95718af11a31 --- /dev/null +++ b/release/texts/alpha/ALPHAHW.TXT @@ -0,0 +1,974 @@ + FreeBSD/alpha Hardware Information + ================================== + +This file 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. + +Scope +----- + +This document tries to provide a starting point for those who want to start +running 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 system's manuals. Per system type that FreeBSD/alpha +supports you will find a section that briefly describes the system, and, +more importantly, provides information on the particulars/quirks of a system +model. + + +In general, what do you need to run FreeBSD/alpha? +-------------------------------------------------- + +Obviously you will need an Alpha machine that FreeBSD/alpha knows about. +Alpha machines are NOT PC-architectures. There are considerable differences +between the various chipsets 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 this particular model. If FreeBSD does not +currently support your machine type, there is a good chance that this will +change some time, assuming there is a SRM available. + +Machines with the ARC/AlphaBIOS console firmware are intended for +WindowsNT. Some of them have SRM firmware available in the system ROMs +which you only have to select (via an ARC/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 -> no FreeBSD (or NetBSD, +OpenBSD, Tru64 Unix or OpenVMS for that matter). + +As part of the SRM you will get the so called OSF/1 PAL code (OSF/1 being the +initial name of DEC'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 priviliged +instructions specific for PAL use. PAL is not microcode by the way. +The ARC 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: AlphaLinux brings it's own PAL code, allowing it to +boot. 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. + +There is another pitfall ahead: you will need a disk adapter that the SRM +console recognises in order to be able to boot from your disk. What is +acceptable to SRM as a boot adapter is unfortunately system / SRM version +dependent. For older PCI based machines this 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 +later SCSI chips/adapters. Check out the machine specific info below. + +The problem might bite those who have machines that started their lives as +WinNT boxes. The ARC/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 but not with SRM. + +Some adapters that cannot be booted from work fine for data-only disks +(e.g. Adaptec 2940x boards). The differences between SRM and ARC could also +get you pre-packaged IDE CDROMs and harddrives in some (former NT) systems. +SRM versions versions exist (depends on the mainboard) that can also boot +from IDE disks. + +If you don't have/want a local disk drive you can boot via the Ethernet. +This assumes a Ethernet adapter/chip that is recognised by the SRM. +Generally speaking this boils down to either a 21040 or 21142 or 21143 +based Ethernet interface. Older machines / SRM versions may not recognise +the 21142 / 21143 FastEthernet chips, you are limited to using 10Mbit +ethernet for netbooting 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. + +Alpha machines can be run with SRM on a graphics console or on +a serial console. ARC does can be run on a serial consoles if need be. VT100 +with 8 bit controls should at least allow you to switch from ARC to SRM +mode. + +If you want to run your Alpha 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 be really practical for debugging purposes. + +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 generally work. But ask around first before buying. + +Most PCI devices from the PC-world will also work in FreeBSD/alpha PCI-based +machines. Check the /sys/alpha/conf/GENERIC file for the latest word on +this. + +Currently all parallel ports do not work on FreeBSD/alpha. The driver needs +work to make this happen. + +For Alpha CPUs you will find multiple versions. The original Alpha +design is the 21064. It was produced in a chip baking 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 higher the EV number the more desirable (read: faster / more modern). + +For memory you want at least 32 Mbytes. I have had FreeBSD/alpha run on a +16 Mbyte system but you will not like that. Kernel build times halved when +going to 32 Mbytes. Note that the SRM steals 2Mbyte from the total system +memory (and keeps it). For more serious use >= 64Mbyte is 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. + +Model specific information +-------------------------- + +Below is an overview of the hardware that FreeBSD/alpha is capable of +running on. This list is bound to grow, a look in /sys/alpha/conf/GENERIC +can be enlightening. Alpha machines are often best known by their project +codename, when known these are listed below in (). + +* +* AXPpci33 ("NoName") +* +The NoName is a baby-AT mainboard based on the 21066 LCA (Low Cost Alpha) +processor. It 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 (even here in the Netherlands +they were sold new for US$ 25). + +Features: +- 21066 Alpha CPU at 166/233MHz + (21068 CPUs are also possible, but are even slower. Never seen/used one) +- memory bus: 64 bits +- onboard Bcache / L2 cache: 0, 256k or 1Mbyte (uses DIL chips) +- PS/2 mouse & keyboard port OR 5pin DIN keyboard (2 mainboard models) +- memory: 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 FlashROM for the console code. +- 2x 16550A serial ports, 1x parallel port, floppy interface +- 1x embedded IDE interface +- expansion: 3 32 bit PCI slots (1 shared with ISA) + 5 ISA slots (1 shared with PCI) +- embedded FastSCSI using a NCR/Symbios 53C810 chip + +SRM: +NoName's can either have SRM *or* ARC console firmware in their FlashROM. +The FlashROM is not big enough to hold both ARC and SRM at the same time +and allow software selection of alternate console code. But you need +SRM only anyway. + +Cache: +Cache for the NoNames are 15 or 20ns DIL chips. For a 256kByte cache you +want to check your junked 486 mainboard. Chips for a 1Mbyte cache are a rarer +breed unfortunately. Getting at least a 256kByte cache is recommended +performance wise. Cacheless they are really slow. + +Power: +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. + +IDE: +SRM presumably cannot boot from IDE disks (have never tried this myself) + +Memory: +Make sure you use true 36 bit SIMMs, and only FPM (Fast Page Mode). EDO RAM +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 either. + +Keyboard/mouse: +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/need to run it. The "DIN-plug"-variant should work OK for FreeBSD. + +The OEM manual is recommended reading. If you did not get one with your +system/board send me email, I have a Postscript copy. + +The kernel configuration file for a NoName kernel must contain: + options DEC_AXPPCI_33 + cpu EV4 + + +* +* 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 very compact 21066 based box, roughly 40cm square and 8 cm thick. + +It has a small 2.5" SCSI disk of 340Mbyte or so. Fortunately there is +an external high density 50pin SCSI connector to hookup something bigger. + +It has an embedded 10Mbit Ethernet interface. There is only one PCI slot +for expansion, and only for a small PCI card too. The socketed CPU is +either 166 or 233 MHz. It comes with a TGA based graphics onboard. +The 3.5" floppy drive is a very compact laptop variant. + +Note: most the discussion of the NoName applies to Multia too. + +Hot: +Multias are somewhat notorious for dying of heat strokes. The very compact +box does not really allow cooling air access very well. Please use the +Multia on it's vertical stand, don't put it horizontally ('pizza style'). +Replacing the fan with something which pushes around more air is +wholeheartedly recommended. + +SCSI: +In case you want to change the internal harddrive: the internal flatcable +running from the PCI riserboard to the 2.5" (!!) harddrive has a finer pitch +than the standard SCSI flatcables. Otherwise it would not fit on the 2.5" +drives. I recommend against trying to cram another harddisk inside. Use the +external SCSI connector and put your disk in an external enclosure. The run +hot enough as-is. + +The kernel configuration file for a Multia kernel must contain: + options DEC_AXPPCI_33 + cpu EV4 + + +* +* 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 performed, +yielding the MiataGL. Unfortunately the boxes are quite indistinguishable. +An easy check is to see if the back of the machine sports two +USB connectors. If yes, it is a MiataGL. + +System designations look like "Personal Workstation 433a". 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-Miata's are likely +to come pre-configured with an IDE CDROM drive. There was also a Miata model +with a special cooling system by Kryotech. This one has a different +enclosure. + +Features: + +- 21164A EV56 Alpha CPU, at 433, 500 or 600MHz +- 21174 Core Logic ("Pyxis") chipset +- onboard Bcache / L3 cache: 0, 2, 4Mbyte (uses a cache module) +- memory bus: 128 bits wide, ECC protected +- memory: Miata uses unbuffered SDRAMs, + installed in pairs of 2, + 6 DIMM sockets +- onboard Fast Ethernet based on: + - MX5 uses a 21142 or 21143 ethernetchip dependent on the version of the + PCI riser card, + - MiataGL has a 21143 chip) + the bulkhead can be 10/100 UTP, or 10 UTP/BNC. +- 2x onboard [E]IDE based on: + - MX5: CMD 646 + - MiataGL: Cypress 82C693 +- 1x UltraWide SCSI Qlogic 1040 [MiataGL only] +- expansion: 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 + a Intel 82378IB PCI to ISA bridge chip) +- 2x 16550A serial port +- 1x parallel port +- PS/2 keyboard & mouse port +- USB interface [MiataGL only] +- embedded sound based on a ESS1888 chip + +CPU mainboard and PCI 'riser' board: +the Miata 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. Apparantly 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 etc) is identical for MX5 and MiataGL. + +DMA bug: +MX5 has problems with DMA via the 2 64-bit PCI slots when this DMA +crosses a page boundary. The 32bit 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> + e.g. set pci_device_override 88c15333 + +The 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 +just like before. The same applies to the FreeBSD kernel by the way. + +EIDE: +The Miata SRM can boot from IDE CDROM drives. It is also known to work for +MiataGL with harddisks, so you can root FreeBSD from an IDE disk. DMA is +not currently working so speed is not optimal. Bootability of EIDE on MX5 is +currently unknown. + +PCI-PCI bridge: +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 (are you still with me? ;-) + +Sound: +both MX5 and MiataGL have an onboard sound chip, an ESS1888. +I have yet to see/hear it work on my MiataGL. But it is being worked on. + +Cache: +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 cachemodule is identical between MX5 and MiataGL. + +Installing a cache module achieves, apart from a 10-15% speed increase (based +on buildworld elapsed time), a *decrease* for PCI DMA read bandwith from +64bit PCI cards. A benchmark on a 64-bit Myrinet card resulted in a decrease +from 149 Mb/sec to 115 Mb/sec. Something to keep in mind when doing really +high speed things with 64 bit PCI adapters. + +USB: +Does not currently seem to work on FreeBSD/alpha judging from the kernel +probe messages. + +The kernel configuration file for a Miata kernel must contain: + options DEC_ST550 + cpu EV5 + +* +* 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 it's much narrower memory bus. + +They are called 'Birds' because their internal DEC codenames were bird +names: + + DEC3000/400 'Sandpiper' 133MHz CPU, desktop + DEC3000/500 'Flamingo' 150MHz CPU, floorstanding + DEC3000/500X 'Hot Pink' 200MHz CPU, floorstanding + DEC3000/600 175MHz CPU, desktop + DEC3000/700, 225MHz CPU, floorstanding + DEC3000/800, 200MHz CPU, floorstanding + DEC3000/900, 275MHz CPU, floorstanding + + DEC3000/300 'Pelican' 150MHz CPU, desktop, 2 TC slots + DEC3000/300X 175MHz CPU, desktop, 2 TC slots + DEC3000/300LX 125MHz CPU, desktop, 2 TC slots + DEC3000/300L 100MHz CPU, desktop, no TC slots + + +Features: +- 21064 CPU (100 to 200 MHz) + 21064A CPU (225 to 275 MHz) +- memory bus: 256 bit, with ECC [DEC3000/500-class] + 64 bit, with ECC [DEC3000/300-class] +- memory: - proprietary 100pin SIMMs + installed in sets of 8 [DEC3000/500-class] + - PS/2 style 72pin 36 bit FPM SIMMs, 70ns or better + used in pairs of 2 [DEC3000/300-class] +- Bcache / L2 cache: varying sizes, 512 kB to 2 Mbyte +- builtin 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 +- onboard 8 bit sound +- 8 bit graphics onboard [some models] or via a TC card [some other models] + +SCSI: +Currently DEC3000 machines can only be used diskless on FreeBSD/alpha. The +reason for this is that the SCSI drivers needed for the TC SCSI adapters +were not brought into CAM that the current FreeBSD versions use. TC option +cards for single (PMAZ-A?) or dual fast SCSI (PMAZC-AA) are also available. +And currently have no drivers n FreeBSD either. + +DEC3000/300 has 5Mbytes/sec SCSI onboard. 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. + +ISDN interface: +does not work on FreeBSD (to be honest I don't think there is any +operating system, including Tru64 Unix, that can use it). + +Memory: +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. + +DEC3000/500-class can use 2, 4, 8, 16 and 32Mbyte 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 512Mbytes maximum. +This is one of the main differences between floorstanding and desktop +machines, the latter have much less SIMM sockets. + +Sound: +is not supported on any of the Birds. + +Graphics: +The 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 + +* +*Evaluation Board 64plus ("EB64+"), Aspen Alpine +* + +In it's attempts to popularise the Alpha CPU DEC produced a number of so +called Evaluation Boards. The EB64+ family boards have the following feature +set: + +- 21064 or 21064A CPU, 150 to 275MHz +- memory bus: 128 bit +- memory: PS/2 style 72 pin 33 bit Fast Page Mode SIMMs, + 70ns or better, + installed in sets of 4, + 8 SIMM sockets + uses parity +- Bcache / L2 cache: 512 kByte, 1 Mbyte or 2 Mbyte +- 21072 ("APECS") chipset +- Intel 82378ZB PCI to ISA bridge chip ('Saturn') +- dual 16550A serial ports +- NCR/Symbios 53C810 FastSCSI +- embedded 10Mbit Ethernet +- 2 PCI slots +- 3 ISA slots + +Aspen Alpine: +Aspen Alpine is slightly different, but is close enough to the EB64+ to +run an EB64+ SRM EPROM (mine does..). 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. + +Memory: +36 bits SIMMs work fine, 3 bits simply remain unused. + +SRM: +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. + +SCSI: +The EB64+ SRM can boot both 53C810 and Qlogic1040 SCSI adapters. Pitfall for +the Qlogic is that the firmware that is downloaded 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 UltraSCSI drives on the Alpine/Qlogic. The +FreeBSD/alpha kernel can be compiled to include a much newer Qlogic firmware +revision. This is not the default because it adds hunderds of kBytes worth +of bloat to the kernel. 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 + +* +* 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 it's own PC164LX +which has only 32 bit PCI, whereas the DEC variant has 64 bit PCI. + +Features: +- 21164A, multiple speed variants [EB164, PC164, PC164LX] + 21164PC [only on PC164SX] +- 21174 ("CIA") chipset +- Bcache / L3 cache: ? +- 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 and PC164] + SDRAM DIMMs in sets of 2, uses ECC [PC164SX and PC164LX] +- dual 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 + +Memory: +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 explicitely setup to use the +8 SIMM memory arrangement. You must have 8 SIMMs, 4 SIMMs distributed +over 2 banks does not work. + +SCSI: +The SRM can boot from Qlogic 10xx boards or the NCR/Symbios 53C810. +53C825[a] will also work as boot adapter. Diamond FirePort, although +based on Symbios chips, are not bootable by the PC164SX SRM. +PC164SX is reported to boot fine with an NCR875 based card. + +SRM quirks: +PC164 the SRM sometimes seems to loose it's variable settings. +"For PC164's, current superstition says that, to avoid losing settings, +you want to first downgrade to SRM 4.x and then upgrade to a 5.x" + +On PC164SX the AlphaBIOS allows you a selection to select 'SRM' to +be used as console on the next powerup. This selection does not appear to +have any effect. In other words, you will get to 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 Website. + +IDE: +PC164 can boot from IDE disks assuming your SRM version is recent enough. + +Samsung PC164UX: +Whether FreeBSD/alpha runs on this board is unknown. Please let me know if +it does. + +For the EB164 class machines the kernel config file must contain: + options DEC_EB164 + cpu EV5 + + +* +* AlphaStation 200 ("Mustang") and 400 ("Avanti") series +* + +The Digital AlphaStation 200 and 400 series systems are early PCI based +workstations for the lower end. The 200 series is a desktop box, the 400 +series is a deskside mini-tower. + +Features: +- 21064 or 21064A CPU +- DECchip 21071-AA (core logic chipset) consisting of: + Cache/memory controller (one 21071-CA chip) + PCI interface (one 21071-DA chip) + Data path (two 21071-BA chips) +- Bcache / L2 cache: 512 Kbytes +- memory bus: 64 bit +- memory: 8 to 384 MBytes of RAM, + 70 ns or better Fast Page DRAM, + in three pairs + uses parity +- PS/2 keyboard and mouse port +- two 16550 serial ports +- parallel port +- floppy disk interface +- 32 bit PCI expansion slots (3 for 400 series, 2 for 200 series) +- ISA expansion slots (4 for 400 series, 2 for 200 series) + (some ISA/PCI slots are physicaly shared) +- embedded 21040-based ethernet (200 series only) +- embedded NCR/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 series) + +Memory: +the system uses parity memory SIMMs, but it does 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. + +Sound: +the sound interface is not supported by FreeBSD. + +SCSI: +AlphaStation 200 series has 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]00 machines the kernel config file must contain: + options DEC_2100_A50 + cpu EV4 + + +* +* AlphaStation 500 and 600 +* +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 darkblue case (TopGun blue), AS600 is a sturdy deskside box. +AS600 has a nice LCD panel to observe the early stages of SRM startup. + +Features: +- 21164 EV5 CPU at 333, 400 or 500 MHz (AS500) + at 266 or 300 MHz (AS600) +- 21171 ("CIA") or 21172 ("CIA2") core logic chipset +- 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 bus: 256 bits, uses ECC +- memory: AS500: industry standard 8 byte wide DIMMs + 8 DIMM slots + installed in sets of 4, + maximum memory is 1 Gb (512Mb max on 333 MHz CPUs) + uses ECC + AS600: 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 for AS600) +- 21040 based 10 Mbit Ethernet adapter with 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 dedicated slot (AS500) + in EISA slot (AS600, this is an ISA card) +- PS/2 keyboard and mouse port + +SCSI: +Early machines had Fast SCSI interfaces, later ones are Ultra SCSI capable. +AS500 shares it's single SCSI bus with internal and external devices. For a +Fast SCSI bus you are limited to 1.8 meters buslength external to the box. ++++ This is what some DEC docs suggest. Did they ever go Ultra? + +AS600 has one Qlogic chip dedicated to the internal devices whereas the +other one is dedicated to external SCSI devices. + +Memory: +In AS500 DIMMs are installed in sets of 4, in 'physically interleaved' +layout. So, a bank of 4 DIMMs is *not* 4 adjacent DIMMs! + +In AS600 the memory SIMMs are placed onto two memory daughtercards. SIMMs +are installed in sets of 8. Both memory daughtercards must be populated +identical. + +PCI: +AS600 has a peculiarity for it's 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 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 bootloader prompt before booting the +installation kernel. + +For the AlphaStation-[56]00 machines the kernel config file must contain: + options DEC_KN20AA + cpu EV5 + +* +* AlphaServer 1000 ("Mikasa"), 1000A ("Noritake") and 800 +* +The AlphaServer range of machines are aimed as departemental 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 daughtercard, and the type of CPU (EV4 or EV5) must +match the mainboard in use. AlphaServer 800 is a much smaller minitower +case, it lacks the StorageWorks SCSI hotplug 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. + +Features: +- 21064 EV4 CPU at 200, 233 or 266 MHz + 21164 EV5 CPU at 300, 333 or 400 MHz (or 500 MHz for AS800 only) +- cache: +- memory bus: 128 bit with ECC +- memory: + AS1000[A]-systems: + Use 72pin 36 bit Fast Page Mode SIMMs, 70ns or better + 16 or 20 SIMM slots + max memory is 1 Gb + uses ECC + AS800: + Uses SDRAM DIMMs. +- embedded VGA (on some mainboard models) +- expansion: + 3 PCI, 2 EISA, 1 64-bit PCI/EISA combo (AS800) + 7 PCI, 2 EISA (AS1000A) + 3 PCI, 6 ???+++ EISA (AS1000) + +Box: +AS1000 based machines come in multiple boxes. Floorstanding, rackmount, +with or without StorageWorks SCSI chassis etc. The electronics are the +same. + +Memory: + 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: + Uses 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. + +SCSI: +For AS800 you want to check if your UltraWide SCSI is indeed in Ultra mode. +This can be done using the EEROMCFG.EXE utility that is on the Firmware +Upgrade CDROM. + +For the AlphaServer1000/1000A/800 machines the kernel config file must contain: + options DEC_1000A + cpu EV4 # depends on model CPU installed + cpu EV5 # depends on model CPU installed + +* +* DS10/VS10/XP900 ("Webbrick") / XP1000 ("Monet") +* +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 difference are the +software and options that are supported. + +Monet has, by 1999 standards, *stunning* (the words of a satisfied +user) memory and I/O system bandwidth. + +** Webbrick + +Features: +- 21264 EV6 CPU at 466 MHz +- L2 / Bcache: 4MB +- memory bus: 128 bit via crossbar +- memory: industry standard 200 pin 83 MHz buffered ECC SDRAM DIMMs + 4 DIMM slots + installed in pairs of 2 + max memory is 2Gb +- 21271 Core Logic Chipset ("Tsunami") +- 2 onboard 21143 Fast ethernet controllers +- AcerLabs M5237 (Aladdin-V) USB controller +- AcerLabs M1533 PCI-ISA bridge +- AcerLabs Aladdin ATA-33 controller +- embedded dual EIDE +- expansion: 3 64-bit PCI slots + 1 32-bit PCI slots +- 2x 16550A serial ports +- 1x parallel port +- 2x USB +- PS/2 keyboard & mouse port + +Power: +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. + +Case: +Webbrick is shipped in a desktop-style case similar to the older 21164 +"Maverick" workstations but which offers much better access to +components. If you intend to build a farm you can rackmount them in a 19" +rack. + +Memory: +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. + +EIDE: +The base model comes with a FUJITSU 9.5GB ATA disk as its boot device. +FreeBSD/alpha works just fine using EIDE disks on Webbrick. + +USB: +whether this works on FreeBSD on DS10 is as yet unknown. + +** Monet + +Features: +- 21264 EV6 at 500 MHz + 21264 EV67 at 500 or 667 MHz +- L2 / Bcache: 4MB +- memory bus: 256 bit +- memory: 128 or 256Mb 100 MHz (PC100) registered ECC SDRAM DIMMs +- 21271 Core Logic Chipset ("Tsunami") +- 1 onboard 21143 ethernet controller +- Cypress 82C693 USB controller +- Cypress 82C693 PCI-ISA bridge +- Cypress 82C693 controller +- expansion: 2 independent PCI buses (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 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 +- 1x UltraWide SCSI port based on a Qlogic 1040 chip +- 2x 16550A serial port +- 1x parallel port +- PS/2 keyboard & mouse port +- embedded 16-bit ESS ES1888 sound chip +- 2x USB +- graphics options: ELSA Gloria Synergy or DEC/Compaq PowerStorm 3D + accelerator cards + +Case: +Monet is housed in a mini-tower like enclosure quite similar to the Miata +box. + +Memory: +For 500 MHz CPUs 83 MHz DIMMs will do. DIMMs are installed in sets of 4, +starting with the DIMM slots marked '0'. Memory capacity is max 4Gb. +DIMMs are installed 'physically interleaved', note the markings of the +slots. + +EIDE: +Is usable / bootable for system disk so FreeBSD can be rooted on an EIDE +disk. + +Expansion: +Don't try to use NCR/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. + +Sound: +The sound chip is not currently supported with FreeBSD. There is work in +progress in this area. + +The kernel config file must contain: +options DEC_ST6600 # xp1000, dp264, ds20, ds10, family + +** DS20/DS20E ("Goldrush" ?): + +Features: +- 21264 EV6 CPU at 500 or 600 MHz +- dual CPU capable machine +- 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 +- 21271 Core Logic Chipset ("Tsunami") +- embedded Adaptec ? Wide Ultra SCSI +- expansion: 2 independent PCI buses (called hoses) + 6 64-bit PCI slots (3 per hose) + 1 ISA slot + +Case: +DS20 is housed in a fat minitower-like enclosure. The enclosure also +contains a StorageWorks SCSI hotswap shelf for a maximum of 7 3.5" SCSI +devices. DS20E is a sleeker case, without the StorageWorks shelf. + +Embedded SCSI: +The embedded Adaptec SCSI chip on DS20 is disabled and therefore +not usable under FreeBSD. + +CPU: +DS20 can have 2 CPUs installed. FreeBSD/alpha is not currently SMP-capable +and will only use the primary CPU. + +Memory: +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. + +Expansion: +Don't try to use NCR/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 an NCR on hose 1 so you +have to move this card before you can install/boot FreeBSD on it. + +* +* DP264 +* + +< need info on this one > + +- onboard Adaptec is not bootable but works with FreeBSD 4.0 and later + as a datadisk-only SCSI bus. + +Acknowledgements +---------------- + +In compiling this file I used multiple information sources, but +http://www.netbsd.org 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 with creating this document: + +- Nick Maniscalco <nmanisca@vt.edu> +- Andrew Gallatin <gallatin@cs.duke.edu> +- Christian Weisgerber <naddy@mips.rhein-neckar.de> +- David O'Brien <obrien@NUXI.com> +- Wim Lemmers <wim.lemmers@compaq.com> +- Matthew Jacob <mjacob@feral.com> +- Eric Schnoebelen <eric@cirr.com> +- Chuck Robey <chuckr@picnic.mat.net> +- Mike Smith <msmith@FreeBSD.ORG>