DECstation
DECstation is the name for a MIPS-based workstation series manufactured by DEC during the 90s. The major models have been the DECstation 2100/3100, the DECstation 5000/1xx, the DECstation 5000/2xx and the Personal DECstation 5000/xx series. They are supported to a varying degree by Linux/MIPS. The major Linux distribution that supports them is the Debian/mipsel port.
Processor Options
DECstations have been equipped with various CPU types ranging from the MIPS R2000 (in the models 2100 and 3100), MIPS R3000 (in the models 5000/20, /25, /33; 5000/120, /125, /133, 5000/200 and /240) over the MIPS R4000 (in the models 5000/50 and 5000/150) to the MIPS R4400 in the model 5000/260.
Memory
The models 2100 and 3100 can be equipped with up to 24MB of RAM, for the 5000/xx the limit is at 40MB, the 5000/1xx can take up to 128MB and the /2xx models can be brought to a maximum of 480MB.
Memory modules are DEC-specific:
- The 2100 and 3100 use small-sized 80-pin SIMMs with 2MB of RAM.
- The 5000/xx and /1xx use the same as the above or similar SIMMs with 8MB of RAM. Modules of different sizes can be mixed, but the memory controller will be configured for the smaller of the sizes, so the upper part of the bigger modules will be wasted.
- The 5000/2xx use quite big daughtercards with either 8MB or 32MB of RAM per card; a battery-backed-up non-volatile module with 1MB of SRAM may be used in one of the slots instead. RAM modules of different sizes can be mixed and no space is wasted, but the module in the first slot has to be of the bigger size. A SRAM module can only be used in the last slot as the motherboard circuitry of the KN03 board (used for the /240 and /260) includes additional logic to support it and the behaviour is unpredictable if such a module is used in any other slot. Whether this restriction applies to KN02 (of the /200) is currently unknown. The SRAM module is supported as an MTD device, but neither the control of the arming circuit nor reporting of the state of the battery has been implemented yet.
Graphics Options
The Personal DECstation 5000/xx has onboard graphics which can display 1024x768 pixels with 8-bit color. The DECstation 5000/1xx and /2xx series do not have onboard graphics but are normally equipped with a TurboChannel graphics adapter. The DECsystem 5000/1xx and /2xx are headless variants of the equivalent DECstation series, which can be "converted" to a DECstation by adding a graphics board.
Up to now, only a few graphics options are (at least partially) supported by Linux-MIPS:
- Personal DECstation onboard graphics: 8-bit color, 1024x768 pixels, dumb
- PMAG-A aka MX: monochrome frame buffer (MFB), 1280x1024 pixels, dumb
- PMAG-B aka CX: 8-bit color frame buffer (CFB), 1024x864 pixels, dumb
- PMAGB-B aka HX: 8-bit color smart frame buffer (SFB), variable resolution with 1280x1024 pixels by default, basic acceleration (acceleration features unsupported in Linux/MIPS)
- ZLX-E1 (PMAGD-A) aka HX+: 8-bit color smart frame buffer plus (SFB+), variable resolution with 1280x1024 pixels by default, basic acceleration (using the TGA driver)
- ZLX-E2 (PMAGD-B) aka HX+: 24-bit color smart frame buffer plus (SFB+), variable resolution with 1280x1024 pixels by default, basic acceleration (using the TGA driver)
- ZLX-E3 (PMAGD-C) aka HX+: 24-bit color with Z-buffer smart frame buffer plus (SFB+), variable resolution with 1280x1024 pixels by default, basic acceleration (using the TGA driver)
Notes on the ZLX options
The ZLX options have been developed for TURBOchannel Alpha systems and have never been officially supported by DEC for DECstation machines. They may still be used, but there are a few limitations. The ZLX-E1 option is fully supported with all the TURBOchannel DECstation systems. The ZLX-E2 and ZLX-E3 options require 16MB and 32MB of TURBOchannel slot space respectively and are therefore unsupported and unusable by the 5000/200 hardware which only provides 4MB of space per slot. The options are supported by the 5000/240 and /260 hardware through the extended TURBOchannel space which provides 512MB of space per slot. However the firmware only supports basic space which provides 8MB of space per slot and does not honor (presumably by removing from the view) the requested slot size reported by these cards. This makes the option firmware crash and option tests are unusable, but the system may still be booted; see below. The options are fully supported with the 5000/1xx and 5000/xx systems which provide 64MB of space per slot.
Storage Options
- PMAZ-AA: Synchronous single-ended SCSI controller based on the NCR 53C94 (aka asc) or the Emulex ESP216 which are interchangeable -- fully supported
- PMAZB-AA: Dual synchronous single-ended SCSI controller based on the NCR 53C94 (aka asc) and the TURBOchannel Dual SCSI ASIC -- support in progress
- PMAZC-AA: Dual fast synchronous single-ended SCSI controller based on the NCR 53CF96-2 (aka asc) and the TURBOchannel Dual SCSI ASIC -- support in progress
- KZTSA-AA: Fast wide synchronous differential SCSI controller -- unsupported
Networking Options
- PMAD-AA: 10 Mbps Ethernet controller based on the AMD Am7990 (LANCE) chip, AUI -- fully supported
- DETRA-AA (PMAT-AA): DEC TRNcontroller 700, Token Ring controller -- unsupported
- DEFZA-AA (PMAF-AA): DEC FDDIcontroller 700, SAS/MMF -- fully supported from 4.20
- DEFZA-CA (PMAF-AA): DEC FDDIcontroller 700C, SAS/STP and /coax -- fully supported from 4.20
- DEFTA-FA (PMAF-FA): DEC FDDIcontroller/TURBOchannel, SAS/MMF -- fully supported from 2.6.21
- DEFTA-AA (PMAF-FS): DEC FDDIcontroller/TURBOchannel, SAS/MMF -- fully supported from 2.6.21
- DEFTA-DA (PMAF-FD): DEC FDDIcontroller/TURBOchannel, DAS/MMF -- fully supported from 2.6.21
- DEFTA-UA (PMAF-FU): DEC FDDIcontroller/TURBOchannel, SAS/UTP -- fully supported from 2.6.21
- DGLTA-FA: DEC ATMworks 750 adapter, OC-3 SONET/SDH, MMF -- unsupported
- DSYT1-AA: DEC WANcontroller 720 dual synchronous serial adapter, T-1/E-1 -- unsupported
Firmware
TODO
Booting
All DECstations can be network booted, with tftp or mop. Some PROM versions have bugs that make tftp boot hard or impossible and some option card ROMs do not support tftp at all. The examples below refer to the onboard Ethernet interface. Substitute the appropriate slot number for booting from an option card. The PMAD-AA, all the DEFZA and all the DEFTA cards are known to support being a boot device, the DGLTA-FA is known not to, and the status of support with the other ones is not known.
tftp boot
To tftp boot you need to have a bootp and tftp server and the kernel ELF image, vmlinux, needs to be first converted to ECOFF. Then issue the tftp boot command to the prom:
On 2100/3100:
boot -f tftp() "console=ttyS3 single rw"
On 5000/1xx:
boot 3/tftp console=ttyS2 rw single
On 5000/200
boot 6/tftp console=ttyS3 rw single
On 5000/240 and 260:
boot 3/tftp console=ttyS2 rw single
Leave out the "console=ttyS2" setting if you have a supported framebuffer.
mop boot
To to use mop for boot you need a mop server on your network. Get a working server from here, it has support for serving out ELF kernels so you don't need to convert the vmlinux image to ECOFF like for tftp boot. Debian has this mopd server all patched up and ready to go. Refer to the mop packge for information on how to set it up. (Put a file named: yourdecsmac.SYS in /tftpboot/mop/ and start mopd: mopd -a).
Then tell the prom to boot using mop:
On 5000/1xx:
boot 3/mop console=ttyS2
hd/cdrom boot
Use delo to boot from hd.
Using a ZLX option
This applies to 5000/240 and /260 systems. As noted above, the ZLX-E2 and ZLX-E3 options require more TURBOchannel slot space than provided by the basic space. Therefore they cannot be used as the console device for the firmware, so it has to be set up to use the serial console before proceeding.
To use either of these options, place it in the slot #0. As the option firmware will try to access the frame buffer which is located beyond the slot the option has been placed in, another slot has to be empty for accesses not to corrupt another card. For the ZLX-E2 the slot #1 has to be empty. For the ZLX-E3 the slot #2 has to be empty. Having satisfied this requirement proceed as follows.
Power-up the system. Tests will start executing which will be marked by blinking LEDs at the rear panel. After a while the LEDs will settle for good with no output to the serial console so far. At this point press and release the halt button. At this point the usual halt report should be sent to the serial console and after a short while the console prompt should appear. Now the system should be bootable, but the memory has not been properly initialised and a memory error will result if Linux is booted. To rectify issue:
t 3/mem/init
and then you can proceed as normal; see instructions for booting above.
Hardware documentation
- DECstation 3100
- DECstation 5000/200
- PMAG-BA framebuffer
- PMAD-AA ethernet
- PMAZ-AA scsi
- Maxine manual
- Turbo Channel firmware specifications
- Turbo Channel system parameters
- Turbo Channel interface ASIC spec