Lionel, trollhunter Bouchpan-Lerust-Juéry <>

v0.0.3 November 2000

The SPARC family of microprocessors is a very good implementation of the RISC design, SPARC based workstations are usually very well engineered products, thus Linux on SPARC is a winning combination both in performance and ease of use. Actually this combination is not as widspread as the Linux/x86; this HOWTO should help you step by step to make an informed decision: try it you will not regret it.

1. Preface.

2. SPARC, which one ?

3. Buying a SPARC workstation.

4. Linux on SPARC: 2 kernels.

5. Choosing a distribution.

6. Working with the Openboot.

7. Hard drive buses.

8. CDROM: specific settings.

9. SILO.

10. Keyboard and mouse.

11. X Window.

12. SMP.

13. The sound.

14. Serial port.

15. Ressources.

16. Thanks.

17. Copyright, Disclaimer and Trademarks

18. Revision History.

1. Preface.

This document is a step by step guide meant to provide information in order to help you running Linux on SPARC based workstations, As these computers are quite different from PCs there is an hardware section, this should help you on understanding, how they work, what to expect from the various CPUs and models.

I am not a SPARC specialist, nor a Solaris or Linux guru, I am just someone who is realy found of well engineered product, and I wish to help you in choosing your hardware and finding information. Thus I have tried to write down this document in order to ease your path.

I hope this document will help you and you will have a lot of fun with your SPARC Workstation.

2. SPARC, which one ?

We are only dealing with, SPARC based workstations, in order to check, just type uname -m command and you should read something like sparc4x where x is blank,c,d,m,u if the system runs Solaris, or sparc for 32 bits SPARC architectures and sparc64 for 64 bits SPARC architectures if it runs Linux. 2.2.x

SPARC stands for Scalable Processor ARChitecture, it derives from research done between 1984-1988 on the RISC architecture at UC Berkeley. It exists 3 versions of this archiecture, SPARC-V7, SPARC-V8 ( 32 bits ) and SPARC-V9 ( 64 bits ). As you are likely to encounter a lot of implementations of the SPARC architecture, I have summarized the main features of theses processors.

2.1 Sun SPARC

This is quite obsolete, it is an implementation of the SPARC-V7 ; its main feature are an Integer unit ( IU ), an external Floating Point Unit ( FPU ), an unified data + instruction 64KB direct associative cache, and an Memory Managment Unit ( MMU ). There is a 4 stage pipeline for the integer instructions ( fetch F, decode D, exec E, update WB ) FPU and IU are synchronized

2.2 Super SPARC

This is Texas Instrument and Sun's brainchild, it is usualy found at clok rates around 50Mhz featuring up to 1MB L2 cache, it is available both on single and dual processor modules ( SparcStation 10 and SparcStation 20 ). The higher clock frequency I have encountered is 60Mhz.

On a technical point of view this is a SPARC-V8 implementation, it is a superscalar processor, having 2 caches, one for instruction the other one for data.

2.3 Micro SPARC

This is once again Texas Instrument and Sun's brainchild, you can find it in the SparcStation Classic, SparcStation LX, at frequency up to 50Mhz. Its derivative the Micro SPARC II can be found in SparcStation 4, SparcStation 5 at frequencies up to 110Mhz.

On a technical point of view, its main features are a high level of integration, having 2 caches, one for instructions, the other one for data.

It is not possible to had an L2 cache. If wish to learn more about the MicroSPARC processor you can browse Sun's Ultra SPARC ressources.

2.4 Hyper SPARC

This processor was introduced by ROSS in 1993, it is usualy found in the SparcStation 10, and SparcStation 20, at frequencies up to 150Mhz ( I have heard of 200Mhz dual processor modules, but Have not witnessed one yet ). It can be found on single or dual processor modules.

On a technical point of view it is an implementation of the SPARC-V8, it is superscalar. It can be found with L2 cache up to 512KB

2.5 Ultra SPARC

The Ultra SPARC processor is an extension of the SPARC-V9 architecture, it is a 64 bits processor, it features some video processing instructions. It is found in all the workstation whose name start with Ultra.

The Ultra SPARC II is an improvement of the Ultra SPARC, the Ultra SPARCIII is actually the second generation of Ultra SPARC processors, it was first introduced in the SunBlade 1000 Workstation. If wish to learn more about the UltraSPARC processors you can browse Sun's Ultra SPARC ressources.

You may read the CPU-Design-HOWTO, this HOWTO has a lot of interesting links when it comes to studying the CPUs.

To summarize, the 32 bits workstations are the:

Only the SparcStation 10 and SparcStation 20 are SMP capable: up to 2 CPU modules.

For more information on the SparcStation 5, 10, 20 you can read Sun's documentation online or download it available.

The following model have an 64 bits UltraSPARC architecture ( sun4u ). SunUltra 1, 2, 5, 10, 30, 60, 80 and SunBlade 1000. The SunUltra 2, 60, 80 and SunBlade 1000 are SMP capable, with the Ultra 80 and SunBlade 1000 accepting up to 4 CPU modules, the SunUltra 2 and 60 accepting only 2 CPU modules.

The SunBlade 1000 is the latest one featuring Sun's latest marvel the Ultra III CPU, at a premium price of course. You can have a summary of the UltraWorkstation still in production at Sun's website.

A lot of information has been compiled in the Sun hardware reference that is found on AcesHardware's website, or on SunHelp 's website.

2.6 Deciphering the CPUs

At first, a reference like SM61 or RT-200-D-125/512 seems to be, to say the least, quite cryptic. Actually, understanding theses references is really easy.

Ross Technology.

Theses CPUs's naming scheme is RT-a00-b-freq/cache where

When theses modules are in a workstations the naming convention is HSxy, for example ywing is a SparcStation 20 HS22, thus it is easier to have a look inside the workstation.

SM modules.

This table is extracted from the FAQABOSS

Name  Speed( MHz )  Cache( MB ) Number of    SuperSparc 
                                 Processors   Series

SM20       33            0            1          I
SM30       36            0            1          I
SM40       40            0            1          I
SM41       40            1            1          I
SM50       50            0            1          I
SM51       50            1            1          I
SM512      50            1            2          I
SM51-2     50            2            1          I
SM61       60            1            1          I
SM61-2     60            2            1          I
SM71       75            1            1          II
SM71-2     75            2            1          II
SM81       85            1            1          II
SM81-5     85            2            1          II

Warning: the SM100 is a RT-600-D-40


Cypress manufactured SPARC compliants processors; AFAIK their naming scheme is CYnnn.

As you can see, this is easy to understand.

3. Buying a SPARC workstation.

You have decided to buy a SPARC based workstation, now you can tell what CPU each model sports, but can you tell how that particuliar model looks like? How its is inside?

Do not worry, this section will help you on that topic as well as providing you with some hints on how to inspect and test the hardware.

3.1 Gaigning a visual familiarity with SPARC hardware

PC hardware is everywhere and usualy one is quite familiar with it, this is not exactly the case with SPARC based hardware, even more when it comes to the innards of a workstation. The good news is that it exists some sites on the web, where you can find pictures of Sun hardware, with some very detailed shots, thus you should be able to instantly identify the model and its condition prior to buy it. The two main site where I usualy go are:

3.2 Sun made hardware or clones ?

On the one hand, it is very easy to find information on Sun hardware, while it can be difficult to find it for clone systems on the other hand it should be more fun to work with exotic hardware.

Clone systems have been or are still manufactured, at least by:

3.3 Where to buy.

Of course if you buy first hand hardware everything should be fine, but if you decide to go for second hand hardware, you will have to decide how you want to buy it, and you should be able to test it by yourself.

Second hand hardware can be brought from Sun as refurbished hardware, at auction websites, or in specialised stores, or directly from companys that upgrade their hardware.

3.4 Checklist

When it comes to second hand hardware one has to be as cautious as possible about the source, and the condition of that hardware.

For the source of the hardware, if you can track it, it is a very good point. If you can't track it, it is up to you to decide if you trust the seller or not ( If the seller cannot give you the reference of the hardwre and if, obviously he/she is clueless about Sun hardware, you should switch to condition red ).

Another interesting point is to see if check is accepted as a payement.

If you can check the hardware before buying it then first have a general look at it, search for cracks, for stains; check the connector's pin. If this first inspection is OK, then ask to see the inside, look for spills, watch carefuly the connectors, then if it is OK ask to see it running, watch carefully boot messages, issue the dmesg|more or if it runs Solaris you can issue the more /var/adm/messages command, and also very important listen to your computer, do you hear unusual noises? Does it smell OK?. Then enter the OpenBoot by the stop+a command and run some tests ( see the OpenBoot section ). When you have decided to purchase it, it is very important that you always make sure that the workstation you are purchasing is the one you have tested: always keep an eye on it, do not let someone go to the backoffice with it for example, do not accept to leave without your workstation.

Then, when you are at home, recheck it as if it was the first time you see it. If it comes with CDROM drive, try to mount/umount a few CDs and read them in order to check that device. If there is a floppy disk read/write/format a few floppys, this should be a good test.

Of course, it exists tools to automaticaly test the hardware, but usualy you do not have them when you need them, thus the script below relies only on ressources provided by a Linux base system.

You should run the following script for three days, basicaly it is going to use the CDROM, floppy and hard drive, and to reboot the computer every 3 hours. This should stress it,

# Enter this in the crontab(5)
# run the script every 3 hours if possible
0 */3 * * * /root/

Where is

# these are for controlling the loops
# are for the CD and FD loops

# to which devices are
# CDROM and floppy attached

# where is the program we
# intend to compile


# this section si meant to 
# test the CDROM and floppy drives
# comment what you do not need to
# test

while [ $CPT -le $CDLIMIT ]
 # CDROM drive
 mount -rt iso9660 $CDROM /cdrom
 find /cdrom -exec cat {} \; >>/dev/null 2>/dev/null &
 umount /cdrom
 # floppy drive
while [ $CPT -le $FDLIMIT ]
 mke2fs -c $FLOPPY >/dev/null 2>&1
 mount -t ext2 $FLOPPY /floppy
 cd /bin/
 cp dd ps echo sh /floppy
 find /floppy -exec cat {} \; >>/dev/null 2>/dev/null &
 umount /floppy

# The big, intensive 
# compilation

cd $PATH

# now compile

# we remove every .a .o .s and every executable

find $PATH -name "*.[aos]" -exec rm -f {} \; >/dev/null 2>&1
find $PATH -exec test -x {} \; -exec rm -f {} \; >/dev/null 2>&1

# time to reboot

Of course you should run this script once in order to know how much time it takes to complete, this is just an idea on how to automate things.

4. Linux on SPARC: 2 kernels.

Actually Linux on SPARC architecture comes in two flavors:

In both case most applications run in 32 bit ( 32 bit userland ). There is a comprehensive FAQ on UltraLinux's website.

5. Choosing a distribution.

You are very lucky, it seems that you can pick the one you like. In order to help you with this task here are some links, that should help you to make an informed decision.

5.1 Caldera Open Linux.

The 2.2 release of OpenLinux for SPARC platform can be downloaded at

You can join the mailing list by sending a mail to < > with subscribe sparclinux in the body.

5.2 Debian GNU/Linux.

Debian GNU/Linux runs on SPARC platform; you can find a lot of informations about this port at the webpage

You can join the mailing list by sending a mail to < > with subscribe as the subject.

5.3 Linux Mandrake.

Mandrake corporate server for SPARC can be downloaded at

It consists of two ISOs, the core distribution is the *inst.iso one and the other one, *ext.iso, is the extension CD.

5.4 RedHat Linux.

The latest RedHat Linux distriution is the 6.2; you can download it at for example.

The mailing list can be joined by sending a mail at

< > with subscribe as the subject.

At the time of this writting RedHat has announced its intention not to support anymore SPARC Linux in the future.

5.5 Slackware Linux.

This distribution is unsupported at the time of this writting, and is not available as ISO. You can download it at

5.6 SuSe Linux.

The SuSe Linux 7.0 distribution is quite complete, you have 4 ISOs to download. You can grab it at the following URL:

You can join the mailing list by sending a blank mail to < >

5.7 TurboLinux.

TurboLinux Workstation 6.1 for intel ships with a SPARC developper release CD.

To install Linux on a SPARC based computer, should be strightforward if you follow the informations provided by your distribution.

To boot from a floppy drive you have to have an install image on a floppy disk and to issue the boot floppy from the OpenBoot.

If your workstation does not have a CDROM or a floppy drive, you can always try to perform a network installation using NFS as explained by this French document: . Basicaly, you have to set up an NFS server and to boot your workstation using the boot net vmlinux nfsroot= in order to access the image that is exported by the workstation on the /tmp directory.

6. Working with the Openboot.

In this section, I will give you an overview of what is the OpenBoot, and you will be given the main commands you need to know in order to test your hardware and to install Linux.

6.1 What is the OpenBoot?

If you are used to PC hardware, you are used to interact with its BIOS. SPARC computers have an Openoot, it may seem to be like your BIOS, but it is actually far more powerfull. The Openoot performs the following tasks:

The programming language is FCode, if you can program the Forth langage, you can program it.

In this section, we will juste use a small set of the OpenBoot's capabilities, in order to test hardware and to boot the system. First you have to enter in the OpenBoot, just hit the stop and a keys simultaneously. Then you should see a ok prompt, if instead you see the > prompt then type n. Now you can proceed to the next section.

6.2 Diagnostics commands.

The OpenBoot, gives you a lot of commands to test and to gather information about your hardware.

6.3 Boot commands.

The OpenBoot allows you to boot from various devices, the command you are the more likely to enter are below.

6.4 Misc commands.

You can poweroff your workstation, when you are working with the OpenBoot : just type power-off

For more informations on the OpenBoot you can read it's

7. Hard drive buses.

Depending on their architecture, the worstations are likely to feature one of the following hard drive buses.


An SCSI connector is located at the rear of the Workstation; the SCA chanel is found on the internal bus of the SPARC Worstations, it can be basicaly seen as an SCSI bus that provides power supply and assigns SCSI ID to the peripherals.

7.2 EIDE.

This is found for example in an Ultra 5 or Ultra 10 workstations

7.3 FC-AL

It is used by the SunBlade 1000 workstation.

8. CDROM: specific settings.

The easiest way to install linux on SPARC workstation is to use a CDROM. If your workstation does not have a CDROM you can plug an external SCSI CDROM drive, but there are two things to do or you are doomed to fail:

As a rule of thumb, nearly all CDROM drives can be assigned to ID #6 but be carefull about the block size setting.

9. SILO.

The Sparc Improved Boot LOader ( SILO ), is the boot loader that is used in the SPARC architecture. It allows you to boot Linux, Solaris or SunOS. It can load a Linux kernel from ext2, iso9660, UFS or ROMFS. From the SILO's README:

This is the first attempt at a complete boot loader for Linux on the Sparc. Because of the lack of space on the bootblock, we have to do it in two steps, the first step is a very simple loader based on Peter Zaitcev's silo (we will call this the first stage loader) which should fit in 512B and its sole purpose is to load a more complete bootstrap loader, herein refered to as the second stage boot loader. The cool thing about the second stage loader we implemented is that it makes use of the ext2 library (provided with the ext2fs tools) and some ufs code, and thus allows the loader to access any file on a ext2 fs and ufs, uses silo.conf, handles gunzipping and a lot of other things. This is different from Linux/i386 lilo which needs a map for each kernel. In silo we just keep one map file for the second stage loader, we don't expect you to be changing the second stage loader on your daily routine (you can do so, you will just need to use a tool to reinstall the maps).

Actually, IMHO it is easier to use than LILO.

10. Keyboard and mouse.

Most of the sun4m workstation have a special connector for the keyboard. In this case the mouse is connected indifferently to left or the right side of the keyboard. Some workstations have a PS2 connector, it is very easy to spot the difference. The keyboards you are the more likely to encounter are the type4 and type5.

11. X Window.

XFree, usualy, runs fine on theses systems. The XServer for the Sun hardware should be the Xsun, XsunMono or Xsun24 one.

12. SMP.

Ouaich, SMP is supported, and I am sure that ROSS's dual CPU modules are supported as you can see by yourself:

piou@ywing:~ > cat /proc/cpuinfo 
cpu             : ROSS HyperSparc RT625 or RT626
fpu             : ROSS HyperSparc combined IU/FPU
promlib         : Version 3 Revision 2
prom            : 2.25
type            : sun4m
ncpus probed    : 2
ncpus active    : 2
Cpu0Bogo        : 125.33
Cpu1Bogo        : 125.33
MMU type        : ROSS HyperSparc
invall          : 0
invmm           : 0
invrnge         : 0
invpg           : 0
contexts        : 4096
CPU0            : online
CPU1            : online
piou@ywing:~ > 

The SparcStation 10 and SparcStations 20 are SMP capable machine and according to the FAQABOSS the following combinations are known to work :

And, as stated earlier, CPU modules in SparcStations 10 and can run a different clock speeds, the following ones __SHOULD__ work:

If you want to learn more about SMP and Linux you can read the SMP-HOWTO

How does it performs? Well, it is fast, really fast. Some of the java Demos can run faster on a dual HyperSparc 125Mhz 128MB ( ywing ) than on a dual celeron BP6 433@433Mhz 192MB ( calimero ). The same applies for the Gimp. When it comes to compiling calimero runs faster than ywing. Both computers running 2.2.16 kernel and calimero's hard disk subsystem is full SCSI.

One important detail when you plan to have different CPU modules in your computer is to have the same kind of modules, you cannot mix SuperSparc and HyperSparc for example, but you can have an odd number of CPUs, for example 3. They are said to be able to run modules at different clock speed as written in this article form AcesHardware , but I have not witnessed it.

I plan to upgrade ywing to 4 CPU in order to see how the performance scales.

13. The sound.

The sound is supposed to work under Linux, using the ioctl application. On my SparcStation 20, the sound works fine under Solaris8, but I have not yet managed to hear anything under Linux ( The Sound of Silence? ).

You can read the Linux/Sparc audio webpage at sparcaudio for more informations.

14. Serial port.

Sun workstations ususaly have 2 serial ports, but on sun4m workstation there is usualy only one serial connector at the rear, you need a special Y cable in order to have access to both ports.

15. Ressources.

The following sites are given for your information, I am independent from them and does not represent them. If you would like to suggest a website or to add any information do not hesitate to email me.

15.1 Information sites.

15.2 Auction sites.

Among the various Auction websites available on the net you can try theses ones. Remember to be very cautious when you purchase hardware ( see the Buying a SPARC workstation section. )

16. Thanks.

Among the many people who showed me how great Unix and the Unix machine can be, some people have earned a special place I would like to thank them:

Both of them beeing real Sysadmin and teatchers from the trenches, have a very deep knowledge and understandement of the Hardware and Software.

17. Copyright, Disclaimer and Trademarks

17.1 Copyright.

Copyright © 2000 by Lionel, trollhunter Bouchpan-Lerust-Juéry. This document may be distributed under the terms set forth in the GNU Free Documentation Licence .

This documentation is distributed in the hope that it will be useful, but without any warranty. The information in this document is correct to the best of my knowledge, but there's a always a chance I've made some mistakes, so don't follow everything too blindly, especially if it seems wrong. Nothing here should have a detrimental effect on your computer, but just in case I take no responsibility for any damages ocurred from the use of the information contained herein.

In this document you will encounter some commercial products and brands. Theses products are cited for information purpose, it is not an endorsement from the author. The trademarks belong to their respective owners.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being : "Copyright, Disclaimer and Trademarks" "Preface.", "SPARC, which one ?", "Buying a SPARC workstation.", "Linux on SPARC: 2 kernels.", "Choosing a distribution.", "Working with the Openboot.", "Hard drive buses.", "CDROM: specific settings.quot;, "SILO.", "Keyboard and mouse.", "X Window.", "SMP.", "The sound.", "Serial port.", "Ressources.", "Thanks.", "Revision History.",

, with the Front-Cover Texts being "title" and "abstract." , and with no Back-Cover Texts .

17.2 Administrativia.

This text is included in the LINUX DOCUMENTATION PROJECT .

The latest version of this document is available in HTML format at If you need a postcript file, you can grab it at

If you wish to mirror it or to translate it, please contact me.

Lionel, Trollhunter Bouchpan-Lerust-Juéry <> or at <>

18. Revision History.